更新時(shí)間:2022-08-12 11:25:26 來源:動(dòng)力節(jié)點(diǎn) 瀏覽1748次
Java回文數(shù)判斷的方法是什么?動(dòng)力節(jié)點(diǎn)小編給大家舉例說明。
問題詳情:判斷一個(gè)整數(shù)是否是回文?;匚闹傅氖峭粋€(gè)整數(shù),正序(從左到右)和逆序(從右到左)
java類:
包 com.example.study02;
公共類IsPalindrome {
公共布爾isPalindrome(int x){
//特別案例:
//如上所述,當(dāng)x <0時(shí),x不是回文。
//同理,如果數(shù)字的最后一位為0,為了使數(shù)字成為回文,
//那么它的第一個(gè)數(shù)字也應(yīng)該是0
//只有0符合這個(gè)屬性
if(x<0||(x%10==0&&x!=0)){
返回假;
}
整數(shù)=0;
//這個(gè)判斷很巧妙,X為正值,num為反值
而(x>數(shù)){
數(shù)=數(shù)*10+x%10;
x/=10;
}
//當(dāng)數(shù)字長(zhǎng)度為奇數(shù)時(shí),我們可以用num/10去掉中間的數(shù)字
//例如,當(dāng)輸入為12321時(shí),我們可以在while循環(huán)結(jié)束時(shí)得到x = 12, num = 123,
//由于中間的數(shù)字不影響回文(總是等于自己),我們可以簡(jiǎn)單的去掉
返回 x==num||x==num/10;
}
}
測(cè)試類別:
包 com.example.study02;
導(dǎo)入靜態(tài) org.junit.Assert.*;
導(dǎo)入 org.junit.Test;
公共類 IsPalindromeTest {
@測(cè)試
公共無效測(cè)試(){
IsPalindrome i=new IsPalindrome();
System.out.println(i.isPalindrome(1234321));
System.out.println(i.isPalindrome(123123));
}
}
操作結(jié)果:
相關(guān)閱讀
0基礎(chǔ) 0學(xué)費(fèi) 15天面授
有基礎(chǔ) 直達(dá)就業(yè)
業(yè)余時(shí)間 高薪轉(zhuǎn)行
工作1~3年,加薪神器
工作3~5年,晉升架構(gòu)
提交申請(qǐng)后,顧問老師會(huì)電話與您溝通安排學(xué)習(xí)