gpt4 book ai didi

java - 我需要将 void 输出转换为字符串,以便我可以比较两个字符串

转载 作者:行者123 更新时间:2023-12-02 06:29:59 25 4
gpt4 key购买 nike

我的程序应该根据用户的输入生成字母模式。我必须使用递归将每个输出设置为不同。我已经这样做了。接下来我必须用另一种方法比较两个输出,并使用递归来找到两者之间最长公共(public)子序列的长度。问题是我不知道如何比较它们。由于它们是无效结果,我不知道如何将它们转换为字符串。

 import java.util.Scanner;
public class patternOfLetters {
private static String letter;

public static void printLetterPattern(char letter){
char [] pattern = new char[1];
int patternLength= pattern.length;
String result="";
char start=letter;
if(start=='A'){
System.out.print('A');
result+='A';
}else if(start=='B'){
printLetterPattern('A');
System.out.print('B');
printLetterPattern('A');
}
else if(start=='C'){
printLetterPattern('B');
System.out.print('C');
printLetterPattern('B');
}
else if(start=='D'){
printLetterPattern('C');
System.out.print('D');
printLetterPattern('C');
}
}


public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner in = new Scanner(System.in);
Scanner otherIn = new Scanner(System.in);
System.out.println("Enter a character to start the pattern: ");
String input = in.nextLine();
String upper = input.toUpperCase();
char letter=upper.charAt(0);
System.out.println("");
System.out.println("Your first pattern of letters is:");
printLetterPattern(letter);
System.out.println("");
System.out.println("");

System.out.println("Enter another character to generate your second pattern: ");
String input2 = in.nextLine();
String upper2 = input2.toUpperCase();
char letter2=upper2.charAt(0);
System.out.println("");
System.out.println("Your second pattern of letters is:");
printLetterPattern(letter2);

in.close();
otherIn.close();
}

}//鳍。

最佳答案

不能,返回类型“void”意味着没有返回结果,因此没有任何可以转换的内容。

您的方法只是将其输出打印到控制台,您需要重写它们,以便它们实际返回结果。

一种方法可能是这样的(伪代码):

public String produceLetterPattern(String pattern, char letter) {
...
if(start=='A') {
pattern+="A";
return pattern;
} else if (start=='B') {
pattern = produceLetterPattern(pattern, 'A');
pattern +="B";
pattern = produceLetterPattern(pattern, 'A');
return pattern;
} ...
}

这是总体思路,您应该能够从那里解决它。重要的部分是您需要返回结果,在上面的示例中是一个字符串,通过

返回
return pattern;

关于java - 我需要将 void 输出转换为字符串,以便我可以比较两个字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20157195/

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