【PTA】判斷一個數(shù)是否為回文數(shù)-創(chuàng)新互聯(lián)

?1. 題目

如果一個數(shù)與它的反轉(zhuǎn)數(shù)相等,則該數(shù)為回文數(shù)。輸入一個數(shù),判斷是否為回文數(shù)。

創(chuàng)新互聯(lián)建站專注于蓋州企業(yè)網(wǎng)站建設(shè),響應(yīng)式網(wǎng)站建設(shè),購物商城網(wǎng)站建設(shè)。蓋州網(wǎng)站建設(shè)公司,為蓋州等地區(qū)提供建站服務(wù)。全流程按需求定制設(shè)計,專業(yè)設(shè)計,全程項目跟蹤,創(chuàng)新互聯(lián)建站專業(yè)和態(tài)度為您提供的服務(wù)

輸入格式:

輸入一個數(shù)

輸出格式:

若XX是回文數(shù),則輸出“XX 是回文數(shù)”,若不是,則輸出“XX 不是回文數(shù)”

輸入樣例1:

6234326

輸出樣例1:

6234326 是回文數(shù)

輸入樣例2:

123456

輸出樣例2:

123456 不是回文數(shù)
import java.util.*;
 
public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int n = scanner.nextInt();
        if(isPalindrome(n)==false)
            System.out.printf("%d 不是回文數(shù)",n);
        else System.out.printf("%d 是回文數(shù)",n);
    }
    public static boolean isPalindrome(int x) {
         String s = new StringBuilder(x+"").reverse().toString();
         return s.equals(x+"");
    }
}
2. 題解

判斷一個數(shù)是否回文數(shù),實際上是問一個字符串是不是回文串。所以,首先需要將數(shù)字轉(zhuǎn)化為字符串。

x+""

一個回文串是對稱的,也就是說這個字符串與它的逆轉(zhuǎn)后的字符串是一樣的。比如,如果一個字符串是"abccbb",那么它逆轉(zhuǎn)后的結(jié)果是"bbccba",很明顯,二者的結(jié)果是不同的;如果一個字符串是"abccba",那么它逆轉(zhuǎn)后的結(jié)果是"abccba",很明顯,二者的結(jié)果是相同的。所以只要比較二者是否相等就可以判斷這個數(shù)是不是回文串了。

本代碼中使用了StringBuider對象,為什么不用String對象呢?

下面看一看封裝字符串的三個對象。

  • String

對象一旦創(chuàng)建,其值是不能修改的,如果要修改,需重新開辟內(nèi)存空間來存儲修改之后的對象;而StringBuffer和StringBuilder對象的值是可以被修改的。

  • StringBuffer

線程比較安全,在多線程系統(tǒng)中可以保證數(shù)據(jù)同步,但是效率比較低;而StringBuilder 沒有實現(xiàn)同步,線程不安全,在多線程系統(tǒng)中不能使用 StringBuilder,但是效率比較高。

  • StringBuilder

如果需要對字符串進行頻繁的修改,使用String會造成內(nèi)存空間的浪費;當(dāng)需要考慮線程安全的場景下使用 StringBuffer,如果不需要考慮線程安全,追求效率的場景下可以使用 StringBuilder。

所以,最好用StringBuilder對象。

字符串封裝完畢后對字符串轉(zhuǎn)置,然后再用toString方法返回。

StringBuilder(x+"").reverse().toString();

比較

s.equals(x+"")
3. 其它方法
  • 由于回文串是對稱的,所以可以將這個數(shù)存儲到數(shù)組中,利用對稱性一個個對比兩端的數(shù)子大小。

你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機房具備T級流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級服務(wù)器適合批量采購,新人活動首月15元起,快前往官網(wǎng)查看詳情吧

當(dāng)前標(biāo)題:【PTA】判斷一個數(shù)是否為回文數(shù)-創(chuàng)新互聯(lián)
網(wǎng)頁地址:http://muchs.cn/article42/dhiohc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站改版、企業(yè)網(wǎng)站制作、關(guān)鍵詞優(yōu)化、手機網(wǎng)站建設(shè)網(wǎng)站制作、企業(yè)建站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都定制網(wǎng)站網(wǎng)頁設(shè)計