java - “找不到符号”/“不能从静态上下文引用非静态变量”
问题描述
public class Main {
public static void main(String[] args){
create("Maze.txt");
}
}
public class Maze {
private final int Max_Maze_Row=20;
private final int Max_Maze_Column=50;
public char[][] maze =new char[Max_Maze_Column-1][Max_Maze_Row-1];
public Maze(){
}
public void create(String filename) throws FileNotFoundException{
Scanner fileinput=new Scanner(new FileInputStream(filename));
fileinput.useDelimiter("");
while(fileinput.hasNextLine()){
int row=0;int col=0;
String line_content=fileinput.nextLine();
for(col=0;col<Max_Maze_Column;col++){
maze[row][col]=line_content.charAt(col);
}
row++;
fileinput.close();
}
System.out.println(maze);
}
}
所以基本上,我正在尝试创建一个 Maze 类,它将从文本文件中读取 20x50 迷宫的内容(这将存储在 2d 数组中)。我定义了 create 方法,它将读取迷宫内容并创建 2D 数组。我有它的代码,我认为这是正确的。但是,当我在主函数中调用 create 方法时,出现“找不到符号”错误。此外,一旦我将 create() 方法设为静态,就会出现非静态变量错误。为什么会这样?任何有关我的创建方法的错误或提示的帮助将不胜感激。谢谢你。
解决方案
create
不是静态的,因此您需要一个实例Maze
,例如:
new Maze().create("Maze.txt");
请注意,通常每个类将位于不同的 java 文件中。
推荐阅读
- pytorch - 为什么我无法安装新版本的 Pytorch?
- react-native - React Native Expo 应用程序 - 无法在 iOS 模拟器中打开应用程序
- java - 关于java中库文档的担忧
- python - 使用分类交叉熵的类权重时遇到问题
- android - 配置文件/调试 APK
- ios - 当用户滑动但不足以显示另一个单元格时如何将集合视图单元格居中
- reactjs - 对象作为 React 子级无效。found: object with keys { .... 如果您打算为孩子呈现集合,请改用数组
- php - 通过 WordPress 发送批量电子邮件的最佳实践
- awk - 如何使用不同的分隔符选择非统一文件中的字段?
- c - 有浮点无穷小吗?