Java 方法中的参数未编译
我只是想创建一个简短的java程序,向用户请求一个int,然后向该int添加3并显示它。由于某种原因,我把语法弄错了Java 方法中的参数未编译,java,Java,我只是想创建一个简短的java程序,向用户请求一个int,然后向该int添加3并显示它。由于某种原因,我把语法弄错了 import java.util.Scanner; public class test { public int attempt (int b) { return 3+entry; } int r = attempt(entry); public static void main (String[] args){
import java.util.Scanner;
public class test {
public int attempt (int b) {
return 3+entry;
}
int r = attempt(entry);
public static void main (String[] args){
Scanner keyboard = new Scanner(System.in);
System.out.println ("Enter single digit int ");
int entry = keyboard.nextInt();
System.out.println("Your number is " + entry);
System.out.println("Your number is " );
System.out.println("The final result is " + r);
}
}
不能调用非静态函数或从静态函数引用非静态变量 所以基本上你必须写作
public static int attempt ....
static int r = ...
问题是静态方法在类测试上运行,而非静态方法在类测试的实例上运行
import java.util.Scanner;
public class test {
// this function should be static
public static int attempt (int b) {
//b for entry, since b is the name of the variable
return 3 + b;
}
public static void main (String[] args){
Scanner keyboard = new Scanner(System.in);
System.out.println ("Enter single digit int ");
int entry = keyboard.nextInt();
//put this in your main function
int r = attempt(entry);
System.out.println("Your number is " + entry);
System.out.println("Your number is " );
System.out.println("The final result is " + r);
}
}
我认为你应该学习一些java教程