Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/371.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何从其他方法访问main方法中的数组或变量?_Java_Variables_Methods_Main - Fatal编程技术网

Java 如何从其他方法访问main方法中的数组或变量?

Java 如何从其他方法访问main方法中的数组或变量?,java,variables,methods,main,Java,Variables,Methods,Main,因此,首先我在main方法中编写了代码,我想将其划分为几个无效的方法,以使其整洁。但这是我的问题,我在main方法中声明的一些变量,不是作为实例变量。如何解决这个问题 public static void main(String[] args){ String[] allcars = args; String[] car1 = allCars[0].split("(?!^)"); String[] car2 = allCars[1].split("(?!^)");

因此,首先我在main方法中编写了代码,我想将其划分为几个无效的方法,以使其整洁。但这是我的问题,我在main方法中声明的一些变量,不是作为实例变量。如何解决这个问题

public static void main(String[] args){

    String[] allcars = args;

    String[] car1 = allCars[0].split("(?!^)");
    String[] car2 = allCars[1].split("(?!^)");

    String[] tire = {car1[0], car2[0]};
    String[] color = {car1[1], car2[1]};

public static void myMethod(){
    for (int i = 0; i <= tire.length-2; i++){
        for (int j = i+1; j < tire.length; j++){
            if ((tire[i]).equals(tire[j])){
                value += 2;
            }
        }
    }
}

它给我一个错误,轮胎无法解析为变量

函数参数用于这些事情。举个例子

public static void myMethod(String[] tire);

public static void main(String[] args){

    String[] allcars = args;

    String[] car1 = allCars[0].split("(?!^)");
    String[] car2 = allCars[1].split("(?!^)");

    String[] tire = {car1[0], car2[0]};
    String[] color = {car1[1], car2[1]};

    myMethod(tire);
}

顺便说一句,您的代码有语法错误-您忘记关闭主功能块大括号。

请标记您想要的编程语言。如果是Java,我很确定您不能这样做-至少局部变量是这样工作的。不过,您几乎没有选择—比如将这些变量作为参数传递给其他方法,或者当然,正如您所说,将它们声明为实例/类变量。所以如果我想使用那个变量,我需要将参数传递给我的方法?我不能将其声明为实例变量,因为在得到tire[]数组之前,main方法中有大量的计算和函数