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中的数字?
答案 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)