黑马程序员技术交流社区

标题: for 循环语句后边要不要加“{}”这个呢? [打印本页]

作者: 13120298870    时间: 2016-4-24 22:10
标题: for 循环语句后边要不要加“{}”这个呢?
问题:我刚刚编写的时候for 句子后边加了个{},结果就完全不同了,有哪位高人可以给简单讲解下么,为什么for后边不能加{}
最大值与最小值:
class  MaxMin{ //相当于冒泡/选择排序的一趟 //可以一次遍历同时找出最大值和最小值   public static void main(String[] args)   {     int max,min;     int[] arr={3,2,1,6,9,5};         max=min=arr[0];//max和min的初始值可以为数组中任何两个值,但下面的循环必须从下标0(i=0)开始    for(int i=1;i<arr.length;++i) {       if(arr>max)               max=arr;       else            if(arr<min)              min=arr;         System.out.println("max="+max+",min="+min);       }   }}

作者: 13120298870    时间: 2016-4-24 22:11
加了{}。结果是:
Max=3,Min=2
Max=3,Min=1
Max=6,Min=1
Max=9,Min=1
Max=9,Min=1
作者: nc11111    时间: 2016-4-25 00:03
代码有问题吧!运行不了
作者: xzy645181797    时间: 2016-4-25 08:51
你遍历数组的时候 里面应该是 arr[i]
还有就是你提出的那个问题是因为你的大括号{ }把打印那句话也括起来了 就是没循环一次就会输出一次 所以才会输出这么多结果   { }只扩到min = arr[i]就可以了
作者: zhoubinjian    时间: 2016-4-25 12:35
不要把打印语句(System.out.println("max="+max+",min="+min);  )放到括号里面就行了,不然就像你说的那样,循环一次打印一次
作者: 13120298870    时间: 2016-4-25 23:11
zhoubinjian 发表于 2016-4-25 12:35
不要把打印语句(System.out.println("max="+max+",min="+min);  )放到括号里面就行了,不然就像你说的那 ...

瞬间秒懂~谢谢。。。
作者: 13120298870    时间: 2016-4-25 23:14
这样是可以不加{}的,因为里面是完整的语句,问了老师了,虽然还是懵懂,以后用的多了应该就好了
作者: 13120298870    时间: 2016-4-25 23:21
xzy645181797 发表于 2016-4-25 08:51
你遍历数组的时候 里面应该是 arr
还有就是你提出的那个问题是因为你的大括号{ }把打印那句话也括起来了 就 ...

哦哦!明白了,谢谢你~




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2