这是我的代码:
/* package whatever; // don't place package name! */
import java.util.*;
import java.lang.*;
import java.io.*;
/* Name of the class has to be "Main" only if the class is public. */
class Ideone
{
public static void main (String[] args) throws java.lang.Exception
{
int[] numbers = {9, 5};
if (numbers[0] > numbers[1]){
System.out.print(Arrays.toString(numbers));
}else if (numbers[1] > numbers[0]) {
System.out.print(Arrays.toString(numbers));
}
}
}
到目前为止,我有这个代码,它抓取数字,然后打印出来。显然它总是会做if语句。有没有办法可以说下面的事情:
if (numbers[0] > numbers[1]){
System.out.print(Arrays.toString(numbers(1, 0));
}else if (numbers[1] > numbers[0]){
System.out.print(Arrays.toString(numbers(1, 0));
}
其中0和1是数组中的位置。也是System.out.print(numbers[0]);
有效的语法或如何让它做到这一点,从而避免转换为String()阶段
感谢
P.S。这是一个非常新的java因此简单,也注意:试图不确定.sort()等内置函数,因为这会破坏练习的重点。
答案 0 :(得分:1)
你可以试试这个:
Arrays.sort(numbers);
System.out.println(Arrays.toString(numbers));
或者这个:
public static void exchangeSort ( int [ ] num ) {
int i, j, temp;
for ( i = 0; i < num.length - 1; i ++ ) {
for ( j = i + 1; j < num.length; j ++ ){
if( num[ i ] < num[ j ] ){
temp = num[ i ];
num[ i ] = num[ j ];
num[ j ] = temp;
}
}
}
}