gpt4 book ai didi

java - 移动确定字符串是否为回文的逻辑

转载 作者:行者123 更新时间:2023-11-30 07:54:23 25 4
gpt4 key购买 nike

目前我对如何将确定字符串是否为回文的逻辑从 main 方法移动到名为 checkPalindrome 的方法感到非常困惑?我的方法应该有一个字符串参数并返回一个 boolean 值,但我仍然不确定如何执行此操作。

import java.util.Scanner;

public class PalindromeCheckMethod {

public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.println("Enter a String: ");
String s = input.nextLine();
boolean isPalindrome = checkPalindrome(s);
String msg = "not a palindrome";
if (isPalindrome) {
msg = "a palindrome";
}
System.out.printf("%s is %s.%n", s, msg);

s = s.toLowerCase();
String resultString = "";

for (int i = 0; i < s.length(); i++) {
if (Character.isLetter(s.charAt(i)))
resultString += s.charAt(i);
}
s = resultString;

int low = 0;
int high = s.length() - 1;

if (high >= 0) {


while (low < high) {
if (s.charAt(low) != s.charAt(high)) {
isPalindrome = false;
break;
}
low++;
high--;
}
}
else {
isPalindrome = false;
}

if (isPalindrome)
System.out.println(s + " is a palindrome. ");
else
System.out.println(s + " is not a palindrome. ");


}

private static boolean checkPalindrome(String s) {
return false;
}

}

最佳答案

static boolean checkPalindrome(String str) 
{
int strEndPoint=str.length()-1;
int strStartPoint=0;
boolean isPalindrome=true;
while(strStartPoint<=strEndPoint)
{
if(str.charAt(strStartPoint)!=str.charAt(strEndPoint))
{
isPalindrome=false;
break;
}
strStartPoint++;
strEndPoint--;
}
return isPalindrome;

}

关于java - 移动确定字符串是否为回文的逻辑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32878678/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com