Java 最终标识符是必需的,为什么?

Java 最终标识符是必需的,为什么?,java,Java,我试着写一个程序,将字符串转换成整数。 但在定义方法时,它在标识符中得到错误,并告诉它应该是最终的 “参数stringtoInteger的修饰符非法;只允许使用final” 有人知道为什么它应该是最后的吗 public class StringtoInt { public static void main(String[] args) { public static void stringtoInteger(){ int i = 24;

我试着写一个程序,将字符串转换成整数。 但在定义方法时,它在
标识符中得到错误,并告诉它应该是
最终的

“参数stringtoInteger的修饰符非法;只允许使用final”
有人知道为什么它应该是最后的吗

public class StringtoInt {
    public static void main(String[] args) {
        public static void stringtoInteger(){

            int i = 24;
            String str = Integer.toString(i);

            int j = 23;
            String str2 = "" + j;

            int k = 22;
            String str3 = " " + k;

            System.out.println(str + "\t" + str2 + "\t" + str3);
            System.out.println(str + str2 + str3);

            System.out.println();

            System.out.println(i + "\t" + j + "\t" + k);
            System.out.println(i  + j  + k);
        }   

    }
}

你不应该在main方法里面放一个方法

或者删除
publicstaticvoidstringtointeger(){
方法声明,并将代码直接放入
main

public class StringtoInt {
    public static void main(String[] args) {

        int i = 24;
        String str = Integer.toString(i);
        ...
或者将
stringtoInteger
移动到main之外(如果希望执行,则从main调用它)

使用此代码:

public class StringtoInt {
    public static void main(String[] args) {
        StringtoInt.stringtoInteger();
    }

    public static void stringtoInteger() {
        int i = 24;
        String str = Integer.toString(i);

        int j = 23;
        String str2 = "" + j;

        int k = 22;
        String str3 = " " + k;

        System.out.println(str + "\t" + str2 + "\t" + str3);
        System.out.println(str + str2 + str3);
        System.out.println(i + "\t" + j "\t" + k);
        System.out.println(i + j + k);
    }
}

在Java中,方法内部不能有方法。请从主方法中取出
stringtoInteger
方法。谢谢。我们可以有两个方法,例如方法1和方法2,然后在这两个方法中定义一个变量,例如str?或者它们应该有不同的名称?@Hengameh,您可以在不同的方法中使用相同的名称。
{…}
定义变量的范围。
public class StringtoInt {
    public static void main(String[] args) {
        StringtoInt.stringtoInteger();
    }

    public static void stringtoInteger() {
        int i = 24;
        String str = Integer.toString(i);

        int j = 23;
        String str2 = "" + j;

        int k = 22;
        String str3 = " " + k;

        System.out.println(str + "\t" + str2 + "\t" + str3);
        System.out.println(str + str2 + str3);
        System.out.println(i + "\t" + j "\t" + k);
        System.out.println(i + j + k);
    }
}