簡體   English   中英

反轉隨機數

[英]Reversing a random amount of numbers

我有以下代碼:

int rev=0;
int opt=Integer.parseInt(JOptionPane.showInputDialog("How many numbers do you need?"));
for (int i=0; i<numbers; i++) {
   int numbers=Integer.parseInt(JOptionPane.showInputDialog("Add your numbers"));
   while (numbers != 0) {
      rev=rev*10;
      rev=rev+numbers%10;
      numbers=numbers/10;
    }
 }
JOptionPane.showMessageDialog(null,"Your numbers are "+rev);

它工作得很好。 我希望數字可以顛倒。 可以,但是必須是多個數字。

例如:比方說,我想2號: 123456的輸出將是321654

我的問題是,如果我想3個數字: 123我如何使它所以它會打印321 ,因為,如果我加一個數字號碼不起作用。

很抱歉,如果這沒有意義,或者我的問題沒有解釋太多。

這樣的東西應該可以工作(未經測試)

 String res="";
 Integer opt=Integer.parseInt(JOptionPane.showInputDialog("How many numbers do you need?"));
 for (int i=0; i<opt; i++) {
   String numbers=JOptionPane.showInputDialog("Add your numbers");
   res = new StringBuilder(numbers).reverse().toString() + res;
 }
 JOptionPane.showMessageDialog(null,"Your numbers are "+res);

或這個

 String res="";
 Integer opt=Integer.parseInt(JOptionPane.showInputDialog("How many numbers do you need?"));
 for (int i=0; i<opt; i++) {
   String numbers=JOptionPane.showInputDialog("Add your numbers");
   res += numbers;
 }
 String reversedString = new StringBuilder(res).reverse().toString();
 JOptionPane.showMessageDialog(null,"Your numbers are "+ reversedString);

您可以將這些數字放在ArrayList中,然后使用Collections.reverse(list)以相反的順序獲取它們。

您需要顛倒每個項目的內部字符順序,然后顛倒提供給您的項目的順序。

    ArrayList<StringBuilder> reversedNumbers = new ArrayList<StringBuilder>();
    for (/*your for loop condition here...*/) {
        String sNumber = /*ask the user for a string here...*/
        StringBuilder reversedNumber = new StringBuilder(sNumber).reverse();
        reversedNumbers.add(reversedNumber);
    }
    Collections.reverse(reversedNumbers);/*finally reverse the colection*/
    JOptionPane.showMessageDialog(null,"Your numbers are "+ reversedNumbers);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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