打印阵列内的什么

时间:2015-06-28 02:31:00

标签: java arrays

            if (val1.charAt(0) == 'A' || val1.charAt(0) == 'a')
            {
                System.out.println("Numbers in Ascending Order:");
                    for (int asc : numx) 
                    {   
                        System.out.print (asc + " ");
                    }

            }
            if (val1.charAt(0) == 'D' || val1.charAt(0) == 'd')
            {
                System.out.println("Numbers in Descending Order:");
                    for (int desc : numx) 
                        {   
                            System.out.print (desc + " ");
                        }
            }

        }   
    }
}
  

你好我几乎完成了这段代码..

     

我想知道你如何对Ascending和Descending中的数字进行排序.. asc / desc中的数字?

4 个答案:

答案 0 :(得分:2)

如果您打算在numx中打印所有值,我想最简单的方法就是这样:

for (int number : numx) {
  System.out.print(number + " ");
}

假设你想要使用你在问题中指定的格式(每个项目之间只有一个空格,没有其他装饰)。

答案 1 :(得分:1)

如果我了解你,可以使用Arrays.toString(int[])之类的

System.out.println("Accepted numbers are:" + Arrays.toString(numx));

答案 2 :(得分:1)

您可以使用以下方法对数字进行排序:

Arrays.sort(numx);

然后根据您是否必须按升序或降序打印数组,以正向或反向顺序打印数组。

您可以使用以下方法:

String asc = "";
String dsc = "";
for(int num: numx) {
    asc += num + "\n";
    dsc = num + "\n" + dsc;
}
val1.charAt(0) == 'A' || val1.charAt(0) == 'a' ?  System.out.println(asc)
: System.out.println(dsc);

答案 3 :(得分:0)

//Use this to sort in ascending order

int max = 0; int temp = 0; int count = 0;

for(int c=0;c<numx.length-1;++c){
    max = numx[c];
    count = c;
    for(int v=c+1;v<numx.length;++v){
        if(numx[v]>max){
            max = numx[v];
            count = c;
        }
    }
    temp = numx[c];
    numx[c] = max;
    numx[count] = temp;
}

//The same goes for descending order but the logic would be (numx[v] < max)