将值从一种方法传递到另一种方法
Passing over values from one method to another on
我的代码的目的是确定用户输入的字符串是否为回文(意味着单词向后拼写和正常拼写相同)。我应该使用 2 种方法来执行此操作,第一种方法(反向)反转单词。在这个方法中,返回的是倒序的字符串,但我需要在另一个方法(isPalindrome)上使用它来比较原文和倒序的拼写是否相同。如何在方法 isPalindrome 上使用反向方法中返回的字符串?
import java.util.Scanner;
public class Palindromes
{
public static void main(String[] args)
{
Scanner input = new Scanner(System.in);
System.out.println("Type in your text:");
String palindrome = input.nextLine();
reverse(palindrome);
if(isPalindrome(palindrome))
{
System.out.println("Your word is a palindrome!");
}
else
{
System.out.println("Your word isn't a palindrome!");
}
}
public static boolean isPalindrome(String text)
{
boolean value = false;
if(reverse.equals(text))
{
value = true;
}
return value;
}
public static String reverse(String text)
{
String reverse = "";
for(int i = text.length()-1; i>=0; i--)
{
reverse = reverse + text.substring(i, i+1);
}
return reverse;
}
}
在你的isPalindrome()
方法中,你只需要调用:
return text.equals(reverse(text));
不需要中间布尔值value
。
更进一步,也不需要反向逻辑,因为您可以只使用 StringBuilder.reverse()
.
我的代码的目的是确定用户输入的字符串是否为回文(意味着单词向后拼写和正常拼写相同)。我应该使用 2 种方法来执行此操作,第一种方法(反向)反转单词。在这个方法中,返回的是倒序的字符串,但我需要在另一个方法(isPalindrome)上使用它来比较原文和倒序的拼写是否相同。如何在方法 isPalindrome 上使用反向方法中返回的字符串?
import java.util.Scanner;
public class Palindromes
{
public static void main(String[] args)
{
Scanner input = new Scanner(System.in);
System.out.println("Type in your text:");
String palindrome = input.nextLine();
reverse(palindrome);
if(isPalindrome(palindrome))
{
System.out.println("Your word is a palindrome!");
}
else
{
System.out.println("Your word isn't a palindrome!");
}
}
public static boolean isPalindrome(String text)
{
boolean value = false;
if(reverse.equals(text))
{
value = true;
}
return value;
}
public static String reverse(String text)
{
String reverse = "";
for(int i = text.length()-1; i>=0; i--)
{
reverse = reverse + text.substring(i, i+1);
}
return reverse;
}
}
在你的isPalindrome()
方法中,你只需要调用:
return text.equals(reverse(text));
不需要中间布尔值value
。
更进一步,也不需要反向逻辑,因为您可以只使用 StringBuilder.reverse()
.