将布尔参数传递给方法



当我尝试传递在另一个方法中本地声明的布尔参数时,编译器会传递错误:

错误:(40,71(java:找不到符号符号:变量frei
位置:类flugVerein

获取传递的布尔变量的方法:

public static void verfügbar(int[] flugAnzahl, String[] vorname, String[] bezeichnung, int[] zeit, boolean frei) 

其中声明变量:

public static void ganzeTag(int[] zeit, String[] vorname, String[] nachname, String[] bezeichnung) {
Scanner sc = new Scanner(System.in);
System.out.println("Geben Sie die Bezeichnung des Fluges ein: ");
String eingabe = sc.nextLine();
boolean frei = false;

主方法中的方法调用:

verfügbar(flugAnzahl, vorname, bezeichnung, zeit, frei);

您无法访问frei变量,因为您使用的方法不同。它是在ganzeTag方法中声明的,但您正试图在main方法中访问它。你可以做一些事情。在我看来,最简单的方法就是把它变成一个领域。

private static boolean frei;

然后在ganzeTag方法中:

public static void ganzeTag(int[] zeit, String[] vorname, String[] nachname, String[] bezeichnung) {
Scanner sc = new Scanner(System.in);
System.out.println("Geben Sie die Bezeichnung des Fluges ein: ");
String eingabe = sc.nextLine();
frei = false; // don't put the boolean.

实际上,您甚至不需要这一行,因为布尔字段的默认值是false。

public static void ganzeTag(int[] zeit, String[] vorname, String[] nachname, String[] bezeichnung) {
Scanner sc = new Scanner(System.in);
System.out.println("Geben Sie die Bezeichnung des Fluges ein: ");
String eingabe = sc.nextLine();

@Jwan我认为您指的是一个局部变量。

最新更新