簡體   English   中英

如何使用另一個數組反轉一個數組中的整數?

[英]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 LangArrayUtils.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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM