誰かが、putやaddのハッシュマップを観察し、アイテムが置かれると、追加されたキー(値)を返すプログラムの作成を手伝ってもらえますか? オブザーバがputを検出すると、私はレスポンスオブジェクトに対して何らかの処理を実行するもう一つのメソッドへのレスポンスを取得します。HashMap observer埋め込みを検出しようとしているJava
私はJavaでObserverを使った提案を楽しみにしています。
誰かが、putやaddのハッシュマップを観察し、アイテムが置かれると、追加されたキー(値)を返すプログラムの作成を手伝ってもらえますか? オブザーバがputを検出すると、私はレスポンスオブジェクトに対して何らかの処理を実行するもう一つのメソッドへのレスポンスを取得します。HashMap observer埋め込みを検出しようとしているJava
私はJavaでObserverを使った提案を楽しみにしています。
はJavaFXのプロパティを見て考えてみましょう:あなたのケースではhttp://docs.oracle.com/javafx/2/binding/jfxpub-binding.htm
、ObservableMap
を使用することが適しだろう。あなたのケースでそうhttps://docs.oracle.com/javase/8/javafx/api/javafx/collections/ObservableMap.html
:これは、マップの変化を追跡することができますデコレータ、ある
// yourMap is the map that has to be observed
ObservalbeMap<Key, Value> observableMap = FXCollections.observableMap(yourMap);
次にあなたがobservableMap
にリスナーを添付することができます。ラムダのを使用して
observableMap.addListener(new MapChangeListener<SensorType, Node>()
{
@Override
public void onChanged(Change<? extends Key, ? extends Value> change)
{
// your code here
}
});
かは、:
observableMap.addListener(
(MapChangeListener.Change<? extends Key, ? extends Value> change) ->
{
// your code here
});
キーと値のプレースホルダは、彼らが自分自身のマップの彼らは、キーと値の型でなければなりません。
[デコレータ](https://en.wikipedia.org/wiki/Decorator_pattern)を使用して、オブザーバーに許可するコードを追加することができます。あるいは、あなたのために飾り付けをするAOPライブラリーをいくつか使用してください(しかし、私はそれらを使用しているのが現在のところ範囲外かもしれません)。 – Thomas
Help:試してみてください。私たちはここであなたの宿題をしているわけではありません。いくつかのコードを記述することから始めます。ここで具体的な質問をしてください。それ以外のものはあなたのためにダウンボントになります。 – GhostCat