Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Java

Java Program ตรวจสอบ Palindrome (ตัวเลขและ String)

Palindrome Number คือเลขที่อ่านจากหน้าหลังได้เหมือนเดิม เช่น 121, 313, 525

ตัวอย่างที่ 1: ตรวจสอบ Palindrome Number

public class Palindrome {
    public static void main(String[] args) {
        int a = 525, revVal = 0, remainder, val;
        val = a;
        System.out.println("Number to be checked = " + a);
        
        while (a != 0) {
            remainder = a % 10;
            revVal = revVal * 10 + remainder;
            a /= 10;
        }
        
        if (val == revVal)
            System.out.println("Palindrome!");
        else
            System.out.println("Not a palindrome!");
    }
}

ผลลัพธ์

Number to be checked = 525
Palindrome!

ตัวอย่างที่ 2: ตรวจสอบ Palindrome String

public class Demo {
    public static void main(String[] args) {
        String str = "ABA";
        String strRev = new StringBuffer(str).reverse().toString();
        
        if (str.equals(strRev))
            System.out.println("Palindrome!");
        else
            System.out.println("Not a Palindrome!");
    }
}

ผลลัพธ์

Palindrome!

วิธีอื่นสำหรับ String (Java 8+):

boolean isPalindrome = new StringBuilder(str).reverse().toString().equals(str);
// หรือ
boolean isPalindrome = IntStream.range(0, str.length() / 2)
    .allMatch(i -> str.charAt(i) == str.charAt(str.length() - 1 - i));

Use Cases: Algorithm Problems, String Processing, Data Validation, Cryptography