Java中的数组变量抛出错误

Java中的数组变量抛出错误,java,Java,► 斜体或粗体 ► 将代码缩进4个空格 ► backtick转义像\u so\u ► 通过在行首放置>进行报价 ► 创建链接,因为int[]num仅在主函数中定义,而不在其他函数中定义,并且它不是类变量。num变量的范围仅限于main()方法。您必须在类中声明它public static,才能使用from函数 第二种方法是将数组作为参数传递到函数中。导致int[]num对于sumNums()和reverseEnums()方法不可见 public static void main(String[]

► 斜体或粗体 ► 将代码缩进4个空格 ► backtick转义
像\u so\u
► 通过在行首放置>进行报价

► 创建链接,因为
int[]num
仅在主函数中定义,而不在其他函数中定义,并且它不是类变量。

num
变量的范围仅限于
main()
方法。您必须在类中声明它
public static
,才能使用from函数


第二种方法是将数组作为参数传递到函数中。

导致
int[]num
对于
sumNums()
reverseEnums()
方法不可见

public static void main(String[] args) 
{
...

System.out.println("The Sum of the numbers is " + sumNums(num));

...

}

public static int sumNums(int[] num)
{  
return num[0] + num[1] + num[2];
}

要么使int[]num类成为变量,要么将int[]num作为参数传递给方法并更改方法签名

static int[] num = new int[3];
public static void main(String[] args) 
{
//call for input
System.out.println("Please Enter a 3-digit number..");
Scanner in = new Scanner(System.in);
for(int i = 0; i < num.length; i++){
int val = in.nextInt();
num[i] = val;
}

System.out.println("The Sum of the numbers is " + sumNums());
System.out.println("The Reverse of the numbers is " + reverseNums());

}

public static int sumNums()
{  
return num[0] + num[1] + num[2];
}

public static int reverseNums()
{
return num[2] + num[1] + num[0]; 
} 

}
static int[]num=new int[3];
公共静态void main(字符串[]args)
{
//征集意见
System.out.println(“请输入一个3位数字…”);
扫描仪输入=新扫描仪(系统输入);
for(int i=0;i

publicstaticvoidmain(字符串[]args)
{
//征集意见
System.out.println(“请输入一个3位数字…”);
扫描仪输入=新扫描仪(系统输入);
int[]num=新的int[3];
for(int i=0;i
静态
方法
只能使用同一类的
静态
变量
。在本例中,您使用的变量不是
静态变量
。你可以这样写:

int[] num = new int[3];
public static void main(...) {
    //the code you want
    sumMums(num);
}

public static int sumNums(in[] num) {  
   return num[0] + num[1] + num[2];
}

num变量的作用域仅在main方法中。请将其作为参数传递或使其成为全局变量。请参考java教程

以NUM作为参数

package-com;
导入java.util.Scanner;
公开课工作表1{
//静态int[]num=新int[3];
公共静态void main(字符串[]args)
{
//征集意见
System.out.println(“请输入一个3位数字…”);
扫描仪输入=新扫描仪(系统输入);
int[]num=新的int[3];
for(int i=0;i
使用NUM作为全局(静态)

package-com;
导入java.util.Scanner;
公开课工作表1{
静态int[]num=新int[3];
公共静态void main(字符串[]args)
{
//征集意见
System.out.println(“请输入一个3位数字…”);
扫描仪输入=新扫描仪(系统输入);
for(int i=0;i
当passint'int[]num'i get'不能应用于给定的类型'Strange'之后,它在我的ide上编译并使用。您能传递给出错误的整个代码吗?num变量的作用域仅在main ethod中。请将其作为参数传递或使其全局化。请参考java教程。也可以使用google查找错误的根本原因。这里没有人空闲。请接受答案,否则不要提出问题。
int[] num = new int[3];
public static void main(...) {
    //the code you want
    sumMums(num);
}

public static int sumNums(in[] num) {  
   return num[0] + num[1] + num[2];
}
package com;

import java.util.Scanner;


public class WorkSheet_1  {
    //static int[] num = new int[3];

    public static void main(String[] args) 
    {
        //call for input
        System.out.println("Please Enter a 3-digit number..");
        Scanner in = new Scanner(System.in);
        int[] num = new int[3];
        for(int i = 0; i < num.length; i++){
        int val = in.nextInt();
        num[i] = val;
        }

        System.out.println("The Sum of the numbers is " + sumNums(num));
        System.out.println("The Reverse of the numbers is " + reverseNums(num));

    }



public static int sumNums(int[] num)
{  
    return num[0] + num[1] + num[2];
}

public static int reverseNums(int[] num)
{
    return num[2] + num[1] + num[0]; 
}  

}
package com;

import java.util.Scanner;


public class WorkSheet_1  {
    static int[] num = new int[3];

    public static void main(String[] args) 
    {
        //call for input
        System.out.println("Please Enter a 3-digit number..");
        Scanner in = new Scanner(System.in);

        for(int i = 0; i < num.length; i++){
        int val = in.nextInt();
        num[i] = val;
        }

        System.out.println("The Sum of the numbers is " + sumNums());
        System.out.println("The Reverse of the numbers is " + reverseNums());

    }



public static int sumNums()
{  
    return num[0] + num[1] + num[2];
}

public static int reverseNums()
{
    return num[2] + num[1] + num[0]; 
}  

}