import java.util.Arrays;
public class lianxi02 {
public static void main(String[] args) {
// 定义一个整型数组,保存成绩信息
int[] scores = { 89, 72, 64, 58, 93 };
// 对Arrays类对数组进行排序
Arrays.sort(scores);
// 使用foreach遍历输出数组中的元素
for (int score:scores ) {
System.out.println(score);
}
}
}
输出的为什么是score 不是scores
foreach的语句格式:
for(元素类型t 元素变量x : 遍历对象obj){
引用了x的java语句;
}
所以score是scores里面的元素,也就是数字
score是你scores数组中的元素,意思就是普通for(int i=0;i<a.length;i++)循环中a[i]的值
语法格式:
for(type variableName : array | collection)
{
//variableName 自动迭代访问每个元素...
}
varibleName这个循环变量是一个临时变量
foreach 语句用于循环访问集合以获取所需信息,
foreach(数据类型 标识符 :集合)
{
循环体
}。
括号里的意思就是score=scores[i]
然后为每一个元素执行输出语句
foreach 语句用于循环访问集合以获取所需信息,
foreach(数据类型 标识符 :集合)
{
循环体
}。
括号里的意思就是score=scores[i]
然后为每一个元素执行输出语句
for (int score:scores):scores是int数组,score就是scores中的一个元素,遍历输出的当然要是数组中的元素!
scores是int数组,score就是scores中的元素。使用foreach循环遍历,就是获取数组的第一个值,赋值给score,
然后打印score就相当于打印数组的第一个元素,下一次循环获取scores数组中第二个元素,赋值给score,
然后打印score就相当于打印数组的第二个元素,依次类推。
所以在foreach中打印score就相当于打印scores中的所有元素。
score=scores [i]
这个新循环,score变量就是临时用来保存scores数组里面元素的,相当于
for(int i=0;i<scores.length;i++){
score=scores[i];
System.out.println(score);
}