レイ:
私はここで、このコードを持っています。
public class ArrayChallenge {
private static Scanner kb = new Scanner(System.in);
public static void main(String[] args) {
System.out.print("Number of integers: ");
int num = kb.nextInt();
int [] returnedArray = readIntegers(num);
System.out.println("Ascending Order: " + printAsc(returnedArray));
}
public static int [] readIntegers(int count){
int [] values = new int[count];
for(int i=0; i<count; i++){
System.out.print("Enter number: ");
values[i] = kb.nextInt();
}
return values;
}
public static int [] printAsc(int [] theArray){
Arrays.sort(theArray);
return theArray;
}
完全に罰金作品上記のコード。私は一つのクラスが、いくつかの静的メソッドのみを持ち、メソッドの呼び出し時にprintAsc(returnedArray) 、プログラムは、ちょうど使用してのような形式で配列のセットを返します.toStringを
私は2つのクラスを使用して、インスタンスメソッドに静的メソッドを作る次のレベルにこのコードを取りました。しかし、私は配列を印刷するとき。それは、これらの値を出力します[I @ 643b1d11
ここでは以下の私のコードは次のとおりです。
メインクラス
public class Main {
public static Scanner kb = new Scanner(System.in);
public static void main(String[] args) {
System.out.print("Enter the number of elements: ");
int num = kb.nextInt();
int numArrays [] = new int[num];
Minimum minimum = new Minimum();
int [] returnedArrays = minimum.readIntegers(numArrays);
int returnedMin = minimum.findMin(returnedArrays);
System.out.println("Minimum Value: " + returnedMin);
System.out.println("Ascending Arrays: " + minimum.arrayAsc(returnedArrays));
}
}
最小クラス
public class Minimum {
public int [] readIntegers(int [] numArrays){
System.out.println("Enter " + numArrays.length + " integers:");
for(int i=0; i< numArrays.length; i++){
numArrays[i]=Main.kb.nextInt();
}
return numArrays;
}
public int findMin(int [] numArrays){
int max = Integer.MAX_VALUE;
for(int i=0;i<numArrays.length;i++){
if(max>numArrays[i]){
max = numArrays[i];
}
}
return max;
}
public int [] arrayAsc(int [] numArrays){
Arrays.sort(numArrays);
return numArrays;
}
}
どのように私の配列の結果はそのようになったのですか?誰かが私にプロセスを説明できますか?多くの感謝。イムのIntelliJを使用しているためまた、私はデバッグの方法を使用し、それは本当に何も表示さdidntの。
アービンド・クマールのAvinash:
使用している方法はprintAsc
、あなたが文字列を返すために、その定義を変更する必要があります。
public static String printAsc(int [] theArray){
Arrays.sort(theArray);
return Arrays.toString(theArray);
}
あなたがの定義を変更したくない場合printAsc
、あなたは次のようにそれを呼び出す必要があります。
System.out.println("Ascending Order: " + Arrays.toString(printAsc(returnedArray)));