2

HashMap関数内に二重中括弧を使用してインラインを作成しています。

public void myFunction(String key, String value) {
    myOtherFunction(
        new JSONSerializer().serialize(
            new HashMap<String , String>() {{
                put("key", key);
                put("value", value.);
            }}
        )
    );
}

そして、私はこれらのエラーを受け取っています:

myClass.java:173: error: local variable key is accessed from within inner class; needs to be declared final
                        put("key", key);
                                   ^
myClass.java:174: error: local variable value is accessed from within inner class; needs to be declared final
                        put("value", value);
                                     ^
2 errors

Object初期化された二重ブレースにメソッドパラメータを挿入するにはどうすればよいですか?

4

2 に答える 2