1
遍历数组
①循环遍历数组有2中方式,遍历一维数组只需要一个for循环,遍历二维数组需要2个for循环。
publicstaticvoidmain(String[] args) {
Stringarr[][] =new String[][] { { "a"}, { "a", "b" },
{"a","b","c" } };
for ( inti = 0; i < arr.length;i++) {
for ( intj = 0; j < arr[i].length;j++) {
System.out.print(arr[i][j]);
}
System.out.println();
}
}
②for-each语句遍历
publicstaticvoidmain(String[] args) {
Stringarr[][] =new String[][] { { "a"}, { "a", "b" },
{"a","b","c" } };
for (String[] i : arr) {//外层遍历得到一维数组
for (String j : i) {//内层遍历得到数组元素
System.out.print(j);
}
System.out.println();
}
}
2 遍历List
①for循环:
publicstaticvoidmain(String[] args) {
List<String>list=new ArrayList<String>();
list.add("a");
list.add("b");
list.add("c");
for(int i=0; i< list.size(); i++){
System.out.println(list.get(i));
}
}
②for-each语句遍历
for(Stringtmp : list){
System.out.println(tmp);
}
③迭代器遍历
Iterator<String>tmp=list.iterator();
while(tmp.hasNext()){
System.out.println(tmp.next());
}
------------------------------------------------------------
for(Iterator<String>tmp=list.iterator();tmp.hasNext();){
System.out.println(tmp.next());
}
3 遍历Map
①键和值都需要(for-each循环)
publicstaticvoidmain(String[] args) {
Map<String,String>map=new HashMap<String, String>();
map.put("a","b");
map.put("c","d");
map.put("e","f");
for(<String,String>entry:map.entrySet()){
System.out.println("key="+entry.getKey()+",value="+entry.getValue());
}
}
②只需要键或者值(可以通过keySet或values来实现遍历,而不是entrySet)
for(Stringkey:map.keySet()){
System.out.println("key="+key);
}
-------------------------------------------------------------------
for(Stringvalue:map.values()){
System.out.println("value="+value);
}
③Itreator遍历
Iterator<<String, String>>tmp=map.entrySet().iterator();
while(tmp.hasNext()){//使用泛型
<String, String>tm=tmp.next();
System.out.println("key="+tm.getKey()+",value="+tm.getValue());
}
-----------------------------------------------------------
Iterator tmp=map.entrySet().iterator();
while(tmp.hasNext()){//不使用泛型
tm= ( ) tmp .next();
Stringkey = (String) tm.getKey();
Stringvalue = (String) tm.getValue();
System.out.println("Key = " + key + ", Value = "+ value);
}
你也可以在keySet和values上应用同样的方法
④通过键找值遍历(效率低)
for(Stringkey:map.keySet()){
Stringvalue=map.get(key);
System.out.println("key="+key+",value="+value);
}