这个java程序

来源:百度知道 编辑:UC知道 时间:2024/06/09 02:43:54
ublic class One {

public static void main(String args[]){

int s;
int j[]=new int[]{1,234,354,351};

for(int i=0;i<j.length;i++)

{
for(int a=0;a<j.length;a++) {
if(j[i]<j[a]){s=j[a];
j[a]=j[i];
j[i]=s;

}
}

}

for(int i=0;i<j.length;i++)
System.out.println(j[i]);

}
}

帮我解读一下这个程序 我不明白为什么最后还要用for语句啊,什么意思啊 还要写一遍for语句。谢谢

因为你的打印语句在for外面,想要输出所有的值只能循环打印,不然输出的就是最后的那个值。
并且i变量的所指范围只在第一个for内部,跳出第一个FOR后他就不认识了

最后for遍历了一下j这个数组,这个应该是个冒泡排序,把数组里面内容按大小个排了一下,最后打印出来

前面两个FOR是比较j数组中每两个数的大小,从大到小排列。

最后一个FOR语句是将j数组中的所有元素在控制台输出。

前面的两个for 是双重循环是为了将一维数组进行排序的,
最生一个for句是将排好序的一维数组打印出来

最后那个是打印输出,还有你那第二个for好象有问题把,你这要是排序的话应该是for(int a=0;a<i;a++ )把,本人水平有限.就看出这么多.