Java 返回类型错误消息 公共类密钥{ 公共编码(){ StringBuffer密码=新的StringBuffer(“气泡”); System.out.println(“原始纯文本:+密码”); 对于(int i=0;i

Java 返回类型错误消息 公共类密钥{ 公共编码(){ StringBuffer密码=新的StringBuffer(“气泡”); System.out.println(“原始纯文本:+密码”); 对于(int i=0;i,java,return,Java,Return,只需编写一个小程序对一小段文本进行编码(和解码),但每当我运行它时,都会出现相同的错误消息 错误:方法声明无效;需要返回类型 公共编码(){” ^您的方法没有返回类型。它需要这样才能知道返回的数据类型 public class Key { public Encode() { StringBuffer passWord = new StringBuffer("bubbles"); System.out.println("Original plain tex

只需编写一个小程序对一小段文本进行编码(和解码),但每当我运行它时,都会出现相同的错误消息

错误:方法声明无效;需要返回类型 公共编码(){”
^

您的方法没有返回类型。它需要这样才能知道返回的数据类型

public class Key {

    public Encode() {
        StringBuffer passWord = new StringBuffer("bubbles");
        System.out.println("Original plain text:" + passWord);

        for (int i = 0; i < passWord.length(); i++) {
            int temp = 0;
            temp=(int)passWord.charAt(i);
            temp=  temp* 9;
            EncodedText = passWord.setCharAt(i , (char)temp);
            return EncodedText;
        }

        //return EncodedText;
    } 

}
没有意义。
EncodedText
是一个类,在分配给它之前需要一个实例。应该是

EncodedText = passWord.setCharAt(i , (char)temp);
但可能更像(我不知道没有看过那门课)

还有这个

EncodedText variableName = new EncodedText(passWord.setCharAt(i , (char)temp));
也没有意义,这是试图返回一个类,也许你的意思是返回该类的实例

return EncodedText;
在这种情况下,在第一个错误中,您可能是指

return variableName;

除此之外,如果不查看
EncodedText
类,我就无法正确诊断其他一些错误。错误包括在似乎正在构建
EncodedText
对象的循环中返回,以及缺少所述对象的创建。

这里有几个错误

  • 您的方法没有返回类型
  • EncodedText没有类型
  • 您不希望您的
    返回
    在for循环中,因为它将在第一次迭代中返回,因此循环将变得无用
  • setCharAt()
    的返回类型为void,不能将其分配给变量

  • 您需要在
    public
    Encode()
    之间放置一个返回类型(如String、int、double等),在这种情况下可能是StringBuffer。请尝试执行
    public StringBuffer Encode(){…}

    同样,您也没有遵循正确的Java命名约定。它应该是这样的:

    public EncodedText Encode() {
    
    e、 g

    有关命名约定标准,请参阅:

    如果您不想返回,请使用返回类型
    void
    ,或者
    返回EncodedText;
    将是一个错误。如果这是一个方法,您需要使用适当的返回类型声明它。如果可以,请不要使用StringBuffer,而是使用StringBuilder。顺便说一句,乘以9更有可能管理文本而不是encod把它弄得乱七八糟。
    return variableName;
    
    public EncodedText Encode() {
    
    public returnType methodName(dataType parameter1, dataType parameter2){
    }
    
    public int add(int a, int b){
       return a+b;
    }