2

このキーと値を持つ Java マップがあります。

Xperia:[EM_A, EM_B, M-bus +, M-bus -, MB1, MB2, MB3, MB4, MB5, DOUT1, DOUT2, DOUT3, DOUT4, DOUT5, DOUT6, DOUT7, DOUT8]

私はこの方法を試しましたが、うまくいきません:

final Iterator<Entry<String, ArrayList<String>>> iter = termekConf.devNameType.entrySet().iterator();
            while(iter.hasNext()) {
                  final Entry<String, ArrayList<String>> entry = iter.next();
                  if(entry.getValue().equals(torlendoValue)) {
                    iter.remove();                  
                  }
                }

キーではなく値を削除するにはどうすればよいですか? myMap.remove(key) は穴のキーを値で削除するだけで、私はそれを望まないので、私は本当にそれを知りません。

ありがとう!

4

3 に答える 3

1
myMap.devNameType.get('Key').remove('Value');

HashMap<String, ArrayList<String>> mMap = new HashMap<String, ArrayList<String>>();
ArrayList<String> listA = new ArrayList<String>();
ArrayList<String> listB = new ArrayList<String>();
ArrayList<String> listC = new ArrayList<String>();
ArrayList<String> listD = new ArrayList<String>();

listA.add("1");
listA.add("2");
listA.add("3");
listA.add("5");

mMap.put("A", listA);
mMap.put("B", listB);
mMap.put("C", listC);
mMap.put("D", listD);


myMap.get("A").remove("3");

キー「A」から値「3」を削除します。

JavaDoc

于 2013-10-21T16:10:31.943 に答える