簡體   English   中英

在java中查找回文數

[英]Finding palindrome number in java

import java.util.*;
class Example{
    public static void main(String args[]){
        Scanner input=new Scanner(System.in);
        System.out.print("Input a prefer number :");
        int num=input.nextInt();
        int reverse=0;
        while(num!=0){
            int num1=num%10;
            reverse=(reverse*10)+num1;
            num/=10;
        }

        System.out.println("Reverse num is "+reverse);
        if(num==reverse){
            System.out.println("The number is palindrome");
        }else{
            System.out.println("Try again");
        }
    }
}

我想通過鍵盤輸入數字時確認它是否是回文數。但我無法得到它。在我的代碼的第7行中,我將變量“reverse”初始化為0。所以當我在第 14 行設置一個條件,“反向”作為 0。那應該是,但我想讓“反向”等於第 10 行中的值。我該怎么辦?

在更改時將 num 分配給另一個變量

import java.util.*;
class Example{
public static void main(String args[]){
    Scanner input=new Scanner(System.in);
    System.out.print("Input a prefer number :");
    int num=input.nextInt();
    int number  = num ; // assign to anaother variable as num gets changed 
    int reverse=0;
    while(num!=0){
        int num1=num%10;
        reverse=(reverse*10)+num1;
        num/=10;
    }

    System.out.println("Reverse num is "+reverse);
    if(number==reverse){
        System.out.println("The number is palindrome");
    }else{
        System.out.println("Try again");
    }
}

}

您可以考慮將數字視為字符串。

  1. 它允許任意大的數字。
  2. 然后您可以使用 StringBuilder 來反轉字符串。
            Scanner input=new Scanner(System.in);
            System.out.print("Input a preferred number :");
            String str = input.nextLine();
            StringBuilder sb = new StringBuilder(str);
            String reverse = sb.reverse().toString();
            System.out.println("Reverse num is "+reverse);
            if(str.equals(reverse)){
                System.out.println("The number is palindrome");
            }else{
                System.out.println("Try again");
            }
        } 

暫無
暫無

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

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