当前位置: 代码迷 >> Java相关 >> 帮解释一个程序
  详细解决方案

帮解释一个程序

热度:14   发布时间:2007-05-23 10:12:34.0
帮解释一个程序


public class ShuzhuTest {
public static void main(String[]args){
int a[]={1,35,7,-1,-4,16,3,83,89,98};
int j;
int m=0,n=0;
for(j=0;j<a.length;j++){
if (a[j]>0)
m++;
else
if
(a[j]<0)
n++;


}
System.out.println("正数和负数分别有"+m+","+n);
}

}
这里的j初始值为什么等于“0”,它的长度不是从一开始算的吗?

搜索更多相关的解决方案: 解释  

----------------解决方案--------------------------------------------------------
我认为,如果你把j换成1,那么在你的数组里的第一个数就不会被指针检测的到。
所以,j必须是0

----------------解决方案--------------------------------------------------------
数组下标是从 0到length-1 .

个人认为LZ应该找本书好好的看一下,你最近问的好多问题都是些基础知识。
这些问题应该自己看看,写写程序来弄懂,而不应该什么问题都来这里问。

[此贴子已经被作者于2007-5-23 10:43:44编辑过]


----------------解决方案--------------------------------------------------------
LZ
是说我吗?我最近好像没问题啊!!!
----------------解决方案--------------------------------------------------------

public class ShuzhuTest {
public static void main(String[]args){
int a[]={1,35,7,-1,-4,16,3,83,89,98};
int j;
int m=0,n=0;
for(j=0;j<a.length;j++){//j表示a数组的下标是从0到length-1
if (a[j]>0)//当a[j]大于0是执行m++,否则执行n++
m++;
else
n++;


}
System.out.println("正数和负数分别有"+m+","+n);
}

}


----------------解决方案--------------------------------------------------------
  相关解决方案