java map 用for循环的问题

java map 用for循环的问题,第1张

亲,你要搞清楚。集合类的foreach只能用来遍历困坦毕,不能进行修改 *** 作的。即不能修改、删除、添加元素。

只能遍历。如果进行了修改 *** 作的话。会抛出java.util.ConcurrentModificationException异常

,表示你不同在遍历的同时,又进行修改。

如果你非得,要做修改 *** 汪芹作。请选择正常的for循环。以List为例。

     信伍   List<String> list = new ArrayList()

for(int i=0i<10i++){

     list.add(i+"") 

}

System.out.println(list.size())//10

for(int i=0i<list.size()i++){

    if(list.get(i).equals("1")){

list.remove(list.get(i))

    }

}

System.out.println(list.size())//9

Map map=new HashMap()   

Iterator it=map.keySet().iterator()   

Object key   

Object value   

while(it.hasNext()){   

 谨码雀   key=it.next()   

    value=map.get(key)   

    System.out.println(key+":"+value)  祥早 

}

用keySet得到map 键的set集合 然后用这个集合模御去迭代

可以分开,我帮你带租写一个,发不出来

public class Test {

public static void main(String[] args) {

List<HashMap<String, String>> list 袜洞= new ArrayList<HashMap<String, String>>()

int a = 1

int b = 2

String key = ""

String value = ""

for (int i = 0 i < 50 i++) {

HashMap<String, String> map = new HashMap<String, String>()

key 蠢好兆= (a + i * 2) + ""

value = (b + i * 2) + ""

map.put(key, value)

list.add(map)

}

for (int i = 0 i < list.size() i++) {

System.out.println(list.get(i))

}

}

}

运行结果:

{1=2}

{3=4}

{5=6}

{7=8}

{9=10}

{11=12}

{13=14}

{15=16}

{17=18}

{19=20}

{21=22}

{23=24}

{25=26}

{27=28}

{29=30}

{31=32}

{33=34}

{35=36}

{37=38}

{39=40}

{41=42}

{43=44}

{45=46}

{47=48}

{49=50}

{51=52}

{53=54}

{55=56}

{57=58}

{59=60}

{61=62}

{63=64}

{65=66}

{67=68}

{69=70}

{71=72}

{73=74}

{75=76}

{77=78}

{79=80}

{81=82}

{83=84}

{85=86}

{87=88}

{89=90}

{91=92}

{93=94}

{95=96}

{97=98}

{99=100}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/8032927.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-12
下一篇 2023-04-12

发表评论

登录后才能评论

评论列表(0条)

保存