0

我正在制作一个单词搜索程序,网格是 10 x 10,所有字母都在 Char[][] 数组中。还有一个单词表。

    public static void find(){

    Scanner input = null;
    try {
        input = new Scanner(new File(WORD_FILE));
    } catch (FileNotFoundException e) {
        e.printStackTrace();
    }

    List<String> words = new ArrayList<>();


    while (input.hasNextLine()){
        words.add( input.nextLine());
    }
    input.close();
    initgrid(); 
    for (char[] a : grid){
        String c =String.valueOf(a);
         for (String s : words){
            if (s.contains(c)){
           // what can i do now?      
             }
    }
    }

有没有人对我如何让程序遍历网格的每个字母有任何建议,并从单词列表中查找单词……它应该能够水平、垂直和对角地阅读单词。

这是我的 InitGrid() 方法,它打开网格文件并将每个字符分配给 char[][] 数组。

 public static char[][] initGrid(){


    Scanner input = null;
    try {
        input = new Scanner(new File(GRID_FILE));
    } catch (FileNotFoundException e) {
        e.printStackTrace();
    }

    String[] tmp = new String[10];
    int c = 0;
    while (input.hasNextLine()){
        tmp[c++]=input.nextLine();
    }
    input.close();


    for (int b = 0; b<tmp.length;b++){
        for (int j= 0; j<tmp[b].length();j++){

            grid[b][j] = tmp[b].charAt(j);

        }
    }

    return grid;
4

0 回答 0