[英]How do I sort, reverse, and print an array of three random integers in a separate class?
[英]How do I reverse the integers in one array using another array?
我從用戶那里得到了10個值,我想將其放入一個數組中並調用為一個方法,然后調用另一個方法,該方法包含一個數組,該數組可以在不使用全局變量的情況下反轉第一個數組的整數。 例如,用戶給我值1,2,3等。然后將其存儲在第一個數組中,然后在第二個數組中輸出3,2,1。
我有一部分代碼可以從用戶那里獲取整數,但是我不知道如何在不使用全局變量的情況下反轉數組。 當代碼到達values[i]
的第二種方法時,代碼不會運行;
這是我到目前為止的內容:
public static void main(String[] args) {
getInput();
reverseInput();
System.exit(0);
}
public static void getInput() {
Scanner keyboard = new Scanner(System.in);
int[] values;
values = new int[10];
//Ask the user to enter 10 integers
System.out.println("Please enter ten numbers.");
for (int i = 0; i<values.length; i++) {//for loop to display the values entered
values[i] = keyboard.nextInt();
System.out.println("Value" + (i +1) + " is " + values[i]);
}
}
public static void reverseInput() {
System.out.println("Now we are going to reverse the numbers.");
Scanner keyboard = new Scanner(System.in);
int [] values;
values = new int[10];
for (int i = (values.length -1); i>= 0; i--) {//for loop to display integers in reversed order
values[i];
System.out.println(values[i]);
}
}
首先,如果您不打算使用全局變量,則需要將數組從get輸入方法傳遞給reverseInput方法。 像這樣:
int[] values = getInput();
reverseInput(values);
然后,要在您的reverseInput方法中輸出數組,它必須看起來像這樣:
public static void reverseInput(int[] values) {
for(int i = (values.length - 1); i >= 0; i--){
System.out.println(values[i]);
}
}
您可以使用Commons Lang的ArrayUtils.reverse :
ArrayUtils.reverse(values);
使用“ getInput”作為基礎來獲取10個數字,然后在“ for”循環之后,反過來執行另一個for循環
public static void reverseInput()
{
Scanner keyboard = new Scanner(System.in);
int[] values;
values = new int[10];
//Ask the user to enter 10 integers
System.out.println("Please enter ten numbers, we are going to reverse the numbers");
for (int i = 0; i<values.length; i++) //for loop to display the values entered
{
values[i] = keyboard.nextInt();
};
int[] revValues;
revValues = new int[10];
for (int i = (values.length -1); i>= 0; i--) //for loop to display integers in reversed order
{
revValues[ revValues.length -1 -i ] = values[ i ];
System.out.println( revValues[ i ] );
}
}
好的,您了解如何按參考順序顯示元素。 如您所寫:
for (int i = (values.length - 1); i >= 0; i--) {
System.out.println(values[i]);
}
因此,鑒於此,您將如何將values
的元素(假設有5個元素)放置在另一個數組(稱為reversedValues
)中,以便將values[4]
放入reversedValues[0]
,依此類推,直到values[0]
被放入reversedValues[4]
?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.