微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

java foreach怎么用

foreach语句是java5的新特征之一,在遍历数组、集合方面,foreach为开发人员提供了极大的方便。

foreach语句是for语句的特殊简化版本,但是foreach语句并不能完全取代for语句,然而,任何的foreach语句都可以改写为for语句版本。

foreach并不是一个关键字,习惯上将这种特殊的for语句格式称之为“foreach”语句。从英文字面意思理解foreach也就是“for 每一个”的意思。实际上也就是这个意思。

foreach的语句格式:

for(元素类型t 元素变量x : 遍历对象obj){
     引用了x的java语句;
}

例子:foreach用法

//下面通过两个例子简单例子看看foreach是如何简化编程的。代码如下:
//一、foreach简化数组和集合的遍历
import java.util.Arrays; 
import java.util.List; 
import java.util.ArrayList; 
 
public class TestArray { 
	public static void main(String args[]) { 
		TestArray test = new TestArray(); 
		test.test1(); 
		test.listToArray(); 
		test.testArray3(); 
	} 
 
	/** 
	* foreach语句输出一维数组 
	*/ 
	public void test1() { 
		//定义并初始化一个数组 
		int arr[] = {2, 3, 1}; 
		System.out.println(----1----排序前的一维数组 ); 
		for (int x : arr) { 
		System.out.println(x); //逐个输出数组元素的值 
		} 

		//对数组排序 
		Arrays.sort(arr); 

		//利用java新特性for each循环输出数组 
		System.out.println(----1----排序后的一维数组 ); 
		for (int x : arr) { 
			System.out.println(x); //逐个输出数组元素的值 
		} 
	} 
 
	/** 
	* 集合转换为一维数组 
	*/ 
	public void listToArray() { 
		//创建List并添加元素 
		List<String> list = new ArrayList<String>(); 
		list.add(1 ); 
		list.add(3 ); 
		list.add(4 ); 
		 
		//利用froeach语句输出集合元素 
		System.out.println(----2----froeach语句输出集合元素 ); 
		for (String x : list) { 
			System.out.println(x); 
		} 
		 
		//将ArrayList转换为数组 
		Object s[] = list.toArray(); 
		 
		//利用froeach语句输出集合元素 
		System.out.println(----2----froeach语句输出集合转换而来的数组元素 ); 
		for (Object x : s) { 
			System.out.println(x.toString()); //逐个输出数组元素的值 
		} 
	} 
	/** 
	* foreach输出二维数组测试 
	*/ 
	public void testArray2() { 
		int arr2[][] = {{4, 3}, {1, 2}}; 
		System.out.println(----3----foreach输出二维数组测试 ); 
		for (int x[] : arr2) { 
		for (int e : x) { 
			System.out.println(e); //逐个输出数组元素的值 
		} 
	} 
}

结果:

----1----排序前的一维数组
2
3
1
----1----排序后的一维数组
1
2
3
----2----froeach语句输出集合元素
1
3
4
----2----froeach语句输出集合转换而来的数组元素
1
3
4

相关学习推荐:java基础教程

原文地址:https://www.jb51.cc/java/1191945.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐