Ich habe einen Code, den ich möchte, dass drei Variablen Aufruf einer Methode, die Benutzereingabe liest und bestimmen, ob es eine ganze Zahl ist (wenn nicht den Benutzer erneut abfragen), dann die Eingabe zurück Die Variable. Ich erhalte den Fehler folgenden Compiler, wenn ich versuche zu kompilieren:Scanner kann nicht in einer Methode verwendet werden
Error: The method getInt(int) in the type Methods is not applicable for the arguments (java.util.Scanner)
Hier ist mein Code:
import java.util.Scanner;
public class Methods{
public static void main(String [] arg){
Scanner scan=new Scanner(System.in);
int a,b,c;
System.out.println("Enter three ints");
a = getInt(scan.nextInt());
b = getInt(scan.nextInt());
c = getInt(scan.nextInt());
}
public static int getInt(String input){
Scanner scan=new Scanner(System.in);
int num = 0;
while (num <1) {
if(scan.hasNextInt()) {
int number = scan.nextInt();
num +=1;
}
else{
System.out.println("Invalid input. Please enter an integer value.");
input.next();
}
}
}
Jede Hilfe könnten Sie würde geschätzt geben!
Ihre Methode 'getInt' nimmt eine' int' Variable als sein Parameter. Sie können keine 'Scanner'-Instanz übergeben, an der ein' int' erwartet wird. Außerdem kompiliert dein Code nicht wie angegeben ... du definierst 'input' (ein Parameter vom Typ 'int' in die Funktion' getInt') innerhalb der Funktion 'getInt' vom Typ' Scanner'. –