今天头有点晕,就是这个程序
public static void main(String args[]){
int[] a = {0,5,4,9,8,7,3,6,1,2};
int num = 0;
for(int i=0;i<a.length;i++){
for(int j=1;j<a.length-1;j++){
if(a[i]>a[j]){
a[i] = a[i];
a[j] = a[j];
}else{
num = a[j];
a[j] = a[i];
a[i] = num;
}
}
}
for(int i=0;i<a.length;i++){
System.out.print(a[i]);
}
}
为什么结果是9012345678
我想要结果是0123456789
没找到原因,大家帮看一下
public static void main(String args[]){
int[] a = {0,5,4,9,8,7,3,6,1,2};
int num = 0;
for(int i=0;i<a.length;i++){
for(int j=1;j<a.length-1;j++){
if(a[i]>a[j]){
a[i] = a[i];
a[j] = a[j];
}else{
num = a[j];
a[j] = a[i];
a[i] = num;
}
}
}
for(int i=0;i<a.length;i++){
System.out.print(a[i]);
}
}
为什么结果是9012345678
我想要结果是0123456789
没找到原因,大家帮看一下
解决方案 »
- hibernate+MSSQL2000 关于boolean类型的问题
- 使用抽象类写一个shape类出错了。错误信息:需要 ".class",不是语句,需要 ";"等
- JSP做了一年多了,我怎么感觉对JAVA还是什么都不会呢...
- 急救:关于日期问题?
- JFreeChart的一些方法
- 菜鸟问题 为什么我没权设置JVM支持IE的<Applet>标记?
- 想换程序学习的网友请进。
- 散分!! 尽做些自己不喜欢的事,好不爽啊!大伙帮我看看,我该怎么办?
- 取得对象数组的内部锁,是否也意味着取得每个对象的内部锁?
- 如何向oracle中写入一个大文件?谢谢!
- [闭月羞花猫]关于LDAP中各个字段的问题
- jFileChooser如何设置fileFilter, 及得到选择的文件的"指针"?
for(int i=0;i<a.length;i++)
for(int j=i+1;j<a.length;j++)出来是9876543210就是一种排序的办法,,,你原来那个,,比较乱
int[] a = { 0, 5, 4, 9, 8, 7, 3, 6, 1, 2 };
int num = 0;
for (int i = 0; i < a.length - 1; i++) {
for (int j = i + 1; j < a.length; j++) {
if (a[i] > a[j]) {
num = a[j];
a[j] = a[i];
a[i] = num;
}
}
}
for (int i = 0; i < a.length; i++) {
System.out.print(a[i]);
}
}这是一个选择排序法,i=0 就是拿 a[0]=0 与后面的第 1 至第 9 位依次比较,当比较到的数字比当前的数字小时就交换位置,比如,当 i=1,j=2 时 a[i] 就是“5”,a[j] 就是“4”,“5”是比“4”大的,所以就交换他们的位置,就变成了 a[i] 为“4”、a[j]为“5”了,再用当前的 a[i]=4 与后面的数字再进行比较。直到全部完成。当要逆序时,前上面的 a[i]>a[j] 改成 a[i]<a[j] 就可以了。
public static void main(String args[]){
int[] a = {0,5,4,9,8,7,3,6,1,2}; int temp = 0;
for(int i=0;i<a.length;i++){
for(int j=i+1;j<a.length;j++){
if(a[i]>a[j]){
temp = a[j];
a[j] = a[i];
a[i] = temp;
}
}
} for(int i=0;i<a.length;i++){
System.out.print(a[i]);
}
}
}
很简单 这样就可以了
然后i++等于1,j就从1遍历到9
。。
。。
一直i=8,j从8遍历到9
public static void main(String args[]){
int[] a = {0,5,4,9,8,7,3,6,1,2};int temp = 0;
for(int i=0;i<a.length;i++){
for(int j=0;j<a.length-1;j++){
if(a[j]>a[j+1]){
temp = a[j];
a[j] = a[j+1];
a[j+1] = temp;
}
}
}for(int i=0;i<a.length;i++){
System.out.print(a[i]);
}
}
}