qq_37857769
2017-03-13 12:10
采纳率: 55.3%
浏览 911
已采纳

小白跪求大神解答 java se

String[] arr=new String[5];
for(int i=0;i<5;i++){
arr[i]=sc.next();
}
String max=arr[0];

    for(String s:arr){
        if(max.length()<s.length()){
            max=s;
        }
    }

    for(String s:arr)是什么意思?
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

5条回答 默认 最新

  • 犊子哥哥 2017-03-13 12:20
    已采纳

    这个是Java的for each 就是for循环的意思啦,你的arr数组是一个字符串数组(也就是一个一个的String装在这里面),这个for(String s:arr)的意思就是
    从arr里面每次取出一个String 放到你定义的这个String s里面,然后对其进行操作嘛等价于
    for(int i = 0,i<=arr.length,i++){}

    已采纳该答案
    打赏 评论
  • 昏晓错星辰 2017-03-13 12:16

    增强for循环,java1.5以后的新特性,其实本质上和for(int i=0;i<length;i++)没太大区别

    打赏 评论
  • threenewbee 2017-03-13 12:21
     相当于 
    for (int i = 0; i < arr.length; i++)
    {
    String s =arr[i];
    if(max.length()<s.length()){
                max=s;
            }
    }
    
    打赏 评论
  • MaJian_2017 2017-10-24 03:55

    这是增强foreach循环语句,你可以用反编译软件对其class文件进行编译,你会发现,其实它和for循环还是有一定的区别的。

    打赏 评论
  • guanjun_12 2017-12-10 02:55

    就是支持数组访问的迭代器啊,一种语法糖而已

    打赏 评论

相关推荐 更多相似问题