语法:
增强for循环(类型 变量:数组名/集合名){}
注:集合要想使用增强循环这种语法,集合需要使用泛型
如果不使用泛型,需要用Object类型定义集合中元素
增强for循环缺点:没有下标。
package fanxing;
import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
public class Test06 {
public static void main(String[] args) {
int[] a= {1,2,3,4,5};
//遍历
for(int e:a) {//int e代表集合或数组中的每一个元素
System.out.println(e);
}
//集合
Set<String> strs=new HashSet<String>();
strs.add("张三");
strs.add("李四");
strs.add("王五");
strs.add("赵六");
//遍历
for(String name: strs) {
System.out.println(name);
}
//集合不使用泛型,element前面便不能使用Integer,使用Object类型可以。
List l=new ArrayList();
l.add(1);
l.add(2);
l.add(3);
l.add(4);
for(Object element:l) {
System.out.println(element);
}
}
}
增强for缺点:
package fanxing;
public class Test07 {
public static void main(String[] args) {
String [] ins= {"运动","音乐","旅游","美食"};
StringBuffer sb=new StringBuffer();
/*for(int i=0;i<ins.length;i++) {
if(i==ins.length-1) {
sb.append(ins[i]);
}else {
sb.append(ins[i]);
sb.append(",");
}
}
System.out.println(sb.toString());*/
//以上循环就不适合使用增强for
for(String s:ins) {
sb.append(s);
sb.append(",");
}
System.out.println(sb.substring(0,sb.length()-1));
}
}