gpt4 book ai didi

java - 递归方法将字符串中的每个字母向后打印 3 次

转载 作者:行者123 更新时间:2023-11-30 11:22:33 29 4
gpt4 key购买 nike

我正在研究一种递归方法,该方法将在我的主要方法中返回并打印,字符串的每个字母向后三个。字符串是 (args[1])。因此,例如,如果字符串是“stack”。它应该输出到:

kkkcccaaatttsss

到目前为止,我设法向后打印字符串。我应该如何打印每个字符串 3 次?

到目前为止我的代码:

public static void main(String[] args){
int number = Integer.parseInt(args[0]);
String word = new String("");
word = args[1];

String methodddd = recursive1.method4(word, number);
System.out.println(methodddd);
}

public static String method4(String word){
int length = word.length();
if (length == length*3){
return "";
}
return word.substring(length-1, length) + method4(word.substring(0, length-1));
}

最佳答案

您非常接近:修改 return 行以将子字符串前置 3 次,而不是前置 1 次:

public static String method4(String word){
int length = word.length();
if (length == 0){
return "";
}
String last = word.substring(length-1, length);
return last + last + last + method4(word.substring(0, length-1));
}

注意结束条件:当(且仅当)length 为零时,length == length*3 为真。

Demo.

关于java - 递归方法将字符串中的每个字母向后打印 3 次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21641800/

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