Java ';变量';无法解析为变量
我正在使用Eclipse,出现以下错误: 无法将席位解析为变量 这是我的节目:Java ';变量';无法解析为变量,java,arrays,methods,compiler-errors,Java,Arrays,Methods,Compiler Errors,我正在使用Eclipse,出现以下错误: 无法将席位解析为变量 这是我的节目: import java.util.*; class Project { public static void printRow(char[] row) { for (char i : row) { System.out.print(i); System.out.print("\t"); } System.out
import java.util.*;
class Project {
public static void printRow(char[] row) {
for (char i : row) {
System.out.print(i);
System.out.print("\t");
}
System.out.println();
}
public static void method1 (char[][]seats){
seats = new char [15][4];
int i,j;
char k = 'O';
for(i=0;i<15;i++) {
for(j=0;j<4;j++) {
seats[i][j]=k;
}
}
for(char[] row : seats) {
printRow(row);
}
我省略了不相关的代码,Eclipse markmethod1(seats)
,但我不知道如何修复它
编辑:我为座位使用一个参数,因为我需要在其他方法中使用。编辑:正如您在评论中所说,您需要在代码中的其他地方重用座位 因此,我建议您采取以下措施:
private char[][] makeSeats() {
char[][] seats = new char[15][4];
for(int i=0; i<15; i++) {
for(int j=0; j<4; j++) {
seats[i][j] = 'O';
}
}
return seats;
}
public static void method1(char[][] seats) {
for(char[] row : seats) {
printRow(row);
}
}
public static void printRow(char[] row) {
for (char i : row) {
System.out.print(i);
System.out.print("\t");
}
System.out.println();
}
public static void main(String[] args) {
char[][] seats = makeSeats();
method1(seats);
}
例如,在main中定义一个
seats
变量。在main
方法中,没有定义seats
。它可能是数据成员吗?是打字错误还是您没有在main中定义“seats”?为什么seats
是method1
的参数?它会立即被覆盖。我需要在其他方法中使用变量'seats',这就是我使用参数的原因,谢谢你的回答。看看你原来的代码,我觉得没必要。我会做一些调整。
private char[][] makeSeats() {
char[][] seats = new char[15][4];
for(int i=0; i<15; i++) {
for(int j=0; j<4; j++) {
seats[i][j] = 'O';
}
}
return seats;
}
public static void method1(char[][] seats) {
for(char[] row : seats) {
printRow(row);
}
}
public static void printRow(char[] row) {
for (char i : row) {
System.out.print(i);
System.out.print("\t");
}
System.out.println();
}
public static void main(String[] args) {
char[][] seats = makeSeats();
method1(seats);
}
public static void method1() {
char[][] seats = new char[15][4];
int i, j;
char k = 'O';
for(i=0; i<15; i++) {
for(j=0; j<4; j++) {
seats[i][j]=k;
}
}
for(char[] row : seats) {
printRow(row);
}
}
public static void main(String[] args) {
method1();
}