每日前进一小步Java编程-for语句的简化写法

Posted 南瓜__pumpkin

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了每日前进一小步Java编程-for语句的简化写法相关的知识,希望对你有一定的参考价值。

for 语句

for 语句是 Java 三种循环语句之一,基本的 for 语句格式如下所示:

for ( [初始化表达式]; [条件表达式]; [更新表达式] )
	语句或语句块

在编写循环语句时需要注意两个问题。另外,在 for 语句中定义的变量,一般只能在 for 语句中使用。

  1. 变量初始化
  2. 条件表达式是否会终止循环

for 语句的简化写法

for 语句的简化写法格式如下所示,此处的类型和标识符都是指 元素,表达式就是遍历的对象。

for (类型 标识符 : 表达式)
	语句或语句块

根据表达式的类型 / 需要遍历的对象,把 for 语句的简化写法分为两类。

1.遍历对象的成员方法有 .iterator()(使用迭代器 Iterator 遍历)

要求表达式 / 遍历对象 的类型具有成员方法 public Iterator<E> iterator(),可以把遍历对象转换成 迭代器 对象。

解释:Iterator 是接口 java.util.Iterator,是一种迭代器类型。成员方法 iterator() 一般返回当前对象所对应的迭代器,然后可以通过接口 Iterator 的成员方法遍历对象。

接口 java.util.Iterator
	boolean hashNext()
	E next()

完整的 for 语句如下:

for (Iterator<类型> i=表达式.iterator(); i.hashNext();)
	{
		类型 标识符 = i.next();
		语句或语句块
	}

简化写法如下,相比省去了单词 Iterator 、成员方法 iterator 和 next 的调用代码等。

for (String c : a)
	System.out.print(c + ", ");

遍历 Vector 向量对象的实例如下:

Vector<String> a = new Vector<String>();	// 字符串向量对象
a.add("a");
a.add("b");

for (String c : a)
		System.out.print(c + ", ");

2.遍历对象是数组类型

for 语句的完整格式是

类型 [] ca = 表达式;
for (int i=0; i<ca.length; i++)
{
	类型 标识符 = ca[i];
	语句或语句块
}
整数类型数组
int [] a = {10, 20, 30};
int sum = 0;
for (int c:a)
	s += c;
枚举类型数组

定义枚举类型数组的代码:

enum E_season
{ 
	春季, 夏季, 秋季, 冬季
}

完整格式:

E_season [] ca = E_season.values();	// 把枚举类转换成枚举类型数组
for (int i=0; i < ca.length; i++)
{	
	E_season c = ca[i];	// 元素是枚举类型
	System.out.print(c + ", ");
}

简写格式:

for (E_season c: E_season.values())
	System.out.print(c + ", ");

总结

for 语句及其简写主要作用是遍历对象的元素,然后通过语句块进行处理。审计代码时碰到 for 语句简写,了解其遍历作用即可。

全文参考:《Java程序设计教程(第3版)》- 雍俊海 编著

以上是关于每日前进一小步Java编程-for语句的简化写法的主要内容,如果未能解决你的问题,请参考以下文章

只有每天前进一小步,才能精通性能测试 !

Shell编程------循环语句

C语言宏的神奇写法:语句块作为参数,算半个函数式编程?

java二维数组foreach语句问题 for(int x:a) if(x==a.length) //不是很明白

shell 编程if条件判断与if 真假判断

JAVA基础编程之打印1-100数字的直角三角形