java中的for循环解释
 
package chapter_four; 
 
public class J_StringBuffer { 
	public static void main(String args[]){ 
		String s = "编码转换"; 
		char [] c = s.toCharArray(); 
		for(char tmp:c) 
		{ 
			System.out.print("\\u"+Integer.toHexString(tmp)); 
		} 
	} 
} 
 
不明白这个for循环是怎样实现的?求解!! 
他是怎样结束的,那个  char tmp:c  为什么可以这样写
              
------解决方案-------------------- 引用:  
package chapter_four; 
 
public class J_StringBuffer { 
	public static void main(String args[]){ 
		String s = "编码转换"; 
		char [] c = s.toCharArray(); 
		for(char tmp:c) 
		{ 
			System.out.print("\\u"+Integer.toHexString(tmp)); 
		} 
	} 
} 
 
 
不明白这个for循环是怎样实现的?求解!!  
他是怎样结束的,那个  char tmp:c  为什么可以这样写 
就是foreach增强for循环(JDK1.5之后出现的?有点模糊了)
foreach语法的冒号后面可以有两种类型:一种是数组,另一种是是实现了Iterable接口的类
------解决方案-------------------- 数组最好不这么用  字符串取字符也最好别这么用
for(int i = 0; i < s.length(); i++) {
  char ch = s.charAt(i);
}
虽然写着不如那个优雅  但是不废话  增强型的for循环编译好以后  谁也不知道是什么样的  不管是什么样的  效率上一定不大于上面的