0

したがって、ユーザーによって代入された文字列のarrayListがあります。また、charの2次元配列もあります。文字列を文字に変更して、2次元配列に入力できるように助けが必要です。

public class WordSearchPuzzle
{
    private char[][] puzzle ;
    private ArrayList<String> puzzleWords ;
    private int letterCount = 0 ;
    private int gridDimensions;

    public WordSearchPuzzle(ArrayList<String> userSpecifiedWords)
    {
        this.puzzleWords = userSpecifiedWords ;

    }

    private void createPuzzleGrid()
    {
        int i;
        for(i = 0; i < puzzleWords.size() ; i++){
            letterCount = puzzleWords.size() + letterCount ;
        }
        gridDimensions = letterCount * 2;
        puzzle = new char[gridDimensions][gridDimensions] ;
    }
4

3 に答える 3

1

各文字列をcharArrayに変更します。

for(String item : ArrayList){
  item.toCharArray();
}
于 2012-04-17T11:12:55.750 に答える
0
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

public class WordSearchPuzzle {

    private char[][] puzzle ;
    private List<String> puzzleWords; //note: don't use a specific implementation (e.g. ArrayList) when you define a List  

    public WordSearchPuzzle(List<String> userSpecifiedWords)
    {
        this.puzzleWords = userSpecifiedWords ;

    }

    public void createPuzzleGrid()
    {
        puzzle = new char[puzzleWords.size()][];
        for(int i = 0; i < puzzleWords.size() ; i++){
            puzzle[i] = puzzleWords.get(i).toCharArray();
        }
    }   


    public void debugPuzzle(){
        System.out.println(Arrays.deepToString(puzzle));
    }
    /**
     * @param args
     */
    public static void main(String[] args) {
        List<String> userWords = new ArrayList<String>();
        userWords.add("word");
        userWords.add("longlongword");
        userWords.add("hello");

        WordSearchPuzzle puzzle = new WordSearchPuzzle(userWords);
        puzzle.createPuzzleGrid();
        puzzle.debugPuzzle();
    }

}

結果

[[w, o, r, d], [l, o, n, g, l, o, n, g, w, o, r, d], [h, e, l, l, o]]
于 2012-04-17T11:27:54.120 に答える
0

宿題 としてタグ付けされました。以前の質問と同様に、お聞きします。何か試したことはありますか? これをどのように解決する予定ですか?あなたの現在の問題は何ですか?

私はあなたにアイデアをあげます。createPuzzleGrid() メソッドは、パズル配列を初期化します。単語のリストから寸法を計算する方法に注意してください。これは正しい方向を示しているはずです: 単語のリストから配列に文字をコピーする方法。

于 2012-04-17T11:19:35.800 に答える