Java 在我的报税表上写什么有问题吗?

Java 在我的报税表上写什么有问题吗?,java,Java,我正在写一个凯撒加密方法。对于原始字符串的每个字符,我希望我的方法将字符移位三。例如,“A”变为“D”等等。现在我想将所有移位字符组合成一个字符串(加密消息)并返回它 如何编写语句来组合字符,然后返回它。您必须将所有字符连接在一起以形成一个字符串。然后返回字符串 首先声明一个字符串对象: String result =""; 在for循环中,在if-else语句之后,将移位字符添加到结果字符串中: result = result + t; return result; 然后在最后(for循

我正在写一个凯撒加密方法。对于原始字符串的每个字符,我希望我的方法将字符移位三。例如,“A”变为“D”等等。现在我想将所有移位字符组合成一个字符串(加密消息)并返回它


如何编写语句来组合字符,然后返回它。

您必须将所有字符连接在一起以形成一个字符串。然后返回字符串

首先声明一个字符串对象:

String result ="";
在for循环中,在if-else语句之后,将移位字符添加到结果字符串中:

result = result + t;
return result;
然后在最后(for循环外部)返回结果字符串:

result = result + t;
return result;
如果您想使用StringBuilder:

  • 创建StringBuilder对象:

    StringBuilder=新建StringBuilder()

  • 附加字符:

    builder.append('a')

    chart='b';
    附加(t)

  • 转换为字符串并返回:

    返回builder.toString()


  • 要返回加密消息,您可以使用该消息递归调用自己的方法。确保您有一个关于何时返回
    null
    (或者在本例中是您自己的消息)的条件。
    循环中的一个小问题是,只需将char
    t
    移位,而不将其替换为字符串或使其返回字符串。您应该将结果存储在某个位置。

    请注意,您应该使用
    StringBuilder
    在循环中连接字符串,以避免创建多个字符串实例的性能损失。如果我对字符串的长度没有限制,如何连接所有字符?您正在按原始字符串的长度运行循环消息它将迭代并连接所有字符@JiriTousek:谢谢你指出。@Osmani我试过了,它告诉我它找不到变量t,当我把return语句放在循环外时,它告诉我这是“类型的非法开始”,你必须在for循环开始之前声明字符串结果。我将编辑答案以使其更有意义。如果删除代码,答案将毫无意义。