Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/396.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在java中输入字符数组?_Java_Arrays - Fatal编程技术网

如何在java中输入字符数组?

如何在java中输入字符数组?,java,arrays,Java,Arrays,我有一个二维数组,如下所示 --- -m- p-- 如何将它们输入到数组中,而不只是使用? 我知道nextInt(),nextLine(),但这些对我解决这个问题没有帮助吗 这是我的密码 public static void main(String[] args) { Scanner in = new Scanner(System.in); int n = in.nextInt(); char[][] board = new char[n][n]; for(in

我有一个二维数组,如下所示

---
-m-
p--
如何将它们输入到数组中,而不只是使用? 我知道nextInt(),nextLine(),但这些对我解决这个问题没有帮助吗

这是我的密码

public static void main(String[] args) {
    Scanner in = new Scanner(System.in);
    int n = in.nextInt();
    char[][] board = new char[n][n];
    for(int i=0 ; i<n ; i++){
        for(int j=0 ; j<n ;j++){
            board[i][j] = //problem at here

        }
    }
publicstaticvoidmain(字符串[]args){
扫描仪输入=新扫描仪(系统输入);
int n=in.nextInt();
字符[][]板=新字符[n][n];
对于(int i=0;i如果使用
nextLine()
可以使用
charAt(index)
获取每个单独的字符

public static void main(String[] args) {
    Scanner in = new Scanner(System.in);
    int n = in.nextInt();
    char[][] board = new char[n][n];
    for(int i=0 ; i<n ; i++){
        String line = in.nextLine();
        for(int j=0 ; j<n ;j++){
            board[i][j] = line.charAt(j);
    }
}
publicstaticvoidmain(字符串[]args){
扫描仪输入=新扫描仪(系统输入);
int n=in.nextInt();
字符[][]板=新字符[n][n];

对于(inti=0;i我假设您要求的是一个字符数组,在这种情况下,您有部分解决方案,但不是全部解决方案

关键是使用nextLine()获取一行,然后使用循环获取每个字符并将其存储在数组中(我们将假设这些行的长度是固定的)

我将跳过查找文件中行数的工作,这由您决定

/* used to set the size of the 2d array*/
FileReader reader = new FileReader("filename");
BufferedReader bReader = new BufferedReader(reader);
int numLines = getNumLines(file);
int lineLength = getLengthLines(file); 

char[][] map = new char[numLines][lineLength]
for(int i = 0; i<numLines; i++){
    String currentLine = bReader.nextLine();
    for(int x = 0; x<lineLength; i++)
        map[i][x] = currentLine.charAt(x);
    }
}
/*用于设置二维阵列的大小*/
FileReader=新的FileReader(“文件名”);
BufferedReader bReader=新的BufferedReader(读卡器);
int numLines=getNumLines(文件);
int lineLength=getLengthline(文件);
char[][]map=新字符[numLines][lineLength]

对于(int i=0;iWhat?显示至少一些代码!或添加更多解释。从何处输入?您是在谈论命令行应用程序?显示您尝试的内容;
nextLine()
应该没有帮助,但是
nextLine()
如果使用正确,可能会起作用。@ScottHunter nextLine()很好,但我必须将字符串转换为字符。有更好的解决方案吗?@ScottHunter我只是想说我知道它们。不幸的是,不能简单地将字符串转换为字符数组,但charAt()方法使转换它们的工作变得足够简单。