您好,登錄后才能下訂單哦!
本篇內容主要講解“Java如何判斷字符串是否是回文字符串”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“Java如何判斷字符串是否是回文字符串”吧!
解決上述問題,有兩種方法可供參考:
(1)從字符串兩頭往中間掃;
(2)從字符串中間往兩頭掃。
具體代碼如下:
import java.util.Scanner; public class StringPalindrome { //方法1:兩頭往中間掃 public boolean IsPalindrome1(String A){ char[] arrayA = A.toCharArray(); int top = 0; int end = arrayA.length-1; if(A.equals("") || A.equals(null)) //非法輸入 return false; while(top < end){ if(arrayA[top++] != arrayA[end--]) return false; } return true; } //方法2:中間往兩頭掃 public boolean IsPalindrome2(String A){ char[] arrayA = A.toCharArray(); int lenA = arrayA.length; int mid = lenA/2; int front; //前半部分 int back; //后半部分 if(lenA % 2 == 0){ //當字符串長度為偶數時 front = mid-1; back = mid; } else{ front = mid -1; back = mid + 1; } if(A.equals("") || A.equals(null)) return false; while(front >= 0 && back < lenA){ if(arrayA[front--] != arrayA[back++]) return false; } return true; } public static void main(String[] args){ StringPalindrome test = new StringPalindrome(); Scanner in = new Scanner(System.in); System.out.println("請輸入一個字符串:"); String A = in.nextLine(); if(test.IsPalindrome1(A)) System.out.println("使用方法1判斷結果為,輸入字符串是回文字符串"); else System.out.println("使用方法1判斷結果為,輸入字符串不是回文字符串"); if(test.IsPalindrome2(A)) System.out.println("使用方法2判斷結果為,輸入字符串是回文字符串"); else System.out.println("使用方法2判斷結果為,輸入字符串不是回文字符串"); } }
結果:
請輸入一個字符串: 我愛我 使用方法1判斷結果為,輸入字符串是回文字符串 使用方法2判斷結果為,輸入字符串是回文字符串 請輸入一個字符串: 我愛你 使用方法1判斷結果為,輸入字符串不是回文字符串 使用方法2判斷結果為,輸入字符串不是回文字符串 請輸入一個字符串: abba 使用方法1判斷結果為,輸入字符串是回文字符串 使用方法2判斷結果為,輸入字符串是回文字符串
到此,相信大家對“Java如何判斷字符串是否是回文字符串”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。