初学JAVA帮我解释一下这段代码是什么意思,谢谢
publicclassArrayTest{publicstaticvoidmain(Stringargs[]){inti;inta[]=newint[5];for(i=0...
public class ArrayTest{ public static void main(String args[]){ int i; int a[]=new int[5]; for (i=0;i<5;i++) a=i; for (i=a.length-1;i>=0;i--) System.out.println("a["+i+"]="+a); } }这两段for循环 , 是第一段循环几次满足条件了以后再进行第二段for循环 还是第一段运行一次然后运行第二段的? 具体是怎样麻烦大神们详细解答一下。 还有println("a["+i+"]="+a);括号里面具体是什么意思?帮帮忙啦!
展开
3个回答
展开全部
这个代码有问题。应该是循环体里面a=i; 应该是a[i]=i; 这个循环体做的事情是i从0循环到4,数组的五个元素依次是0到4。第二个循环体是输出。那里也应该是a[i],即System.out.println("a["+i+"]="+a[i]); 作用是i从4循环到0,依次输出数组元素的值。输出内容是:
a[4]=4
a[3]=3
a[2]=2
a[1]=1
a[0]=0
当然比较规范的写法是在循环体上加括号。结构会清晰一些。不加括号,for循环的循环体默认就只有for循环后面的一个语句。
整理后代码如下:
public class ArrayTest {
public static void main(String args[]) {
int i;
int a[] = new int[5];
for (i = 0; i < 5; i++) {
a[i] = i;
}
for (i = a.length - 1; i >= 0; i--){
System.out.println("a[" + i + "]=" + a[i]);
}
}
}
a[4]=4
a[3]=3
a[2]=2
a[1]=1
a[0]=0
当然比较规范的写法是在循环体上加括号。结构会清晰一些。不加括号,for循环的循环体默认就只有for循环后面的一个语句。
整理后代码如下:
public class ArrayTest {
public static void main(String args[]) {
int i;
int a[] = new int[5];
for (i = 0; i < 5; i++) {
a[i] = i;
}
for (i = a.length - 1; i >= 0; i--){
System.out.println("a[" + i + "]=" + a[i]);
}
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
如果没有大括号括起,则紧邻着的一句属于循环体。
即
for (i=0;i<5;i++)
a=i;
//两循环不干扰
for (i=a.length-1;i>=0;i--)
System.out.println("a["+i+"]="+a[i]);//此处应该是a[i]吧?
//此处的输出,显示出来的应该是a[4]=4 a[3]=3 ......
//实际上很简答就是在做字符串的加法,"abc"+"defg"="abcdefg";
//如果一个字符串加上一个数字,则这个数字会被隐式转换为字符串,如"abc"+1="abc1"
//所以这里其实是做加法,"a[" i "]=" a[i]这几个加在一起,就形成了上面的效果
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
第一段循环5次之后再循环第二段for,因为for后面如果没有{}的话就只执行下面的一句,输出这个你试试吧- -...忘得差不多了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询