0

ここには 2 つの文字配列があり、私の目標は 2 つの配列の変更を取得し、単語の文字列を形成することです。アイデアは、新しく再生された単語をスクラブルで取得するようなもので、前の文字から使用した文字も考慮する必要があります。 (私はそれを明確に言っていますか?)ここでの私の問題は、OSTを取得できますが、Pを取得できないことです...助けてください..

これが私のコードです

Character[][] arr1 = new Character[4][4];
    arr1[0][0] = 'H';
    arr1[0][1] = 'E';
    arr1[0][2] = 'L';
    arr1[0][3] = 'P';
    arr1[1][0] = ' ';
    arr1[1][2] = ' ';
    arr1[1][3] = ' ';
    arr1[2][0] = ' ';
    arr1[2][1] = ' ';
    arr1[2][2] = ' ';
    arr1[2][3] = ' ';
    arr1[3][0] = ' ';
    arr1[3][1] = ' ';
    arr1[3][2] = ' ';
    arr1[3][3] = ' ';

    Character[][] arr2 = new Character[4][4];
    arr2[0][0] = 'H';
    arr2[0][1] = 'E';
    arr2[0][2] = 'L';
    arr2[0][3] = 'P';
    arr2[1][0] = ' ';
    arr2[1][2] = ' ';
    arr2[1][3] = 'O';
    arr2[2][0] = ' ';
    arr2[2][1] = ' ';
    arr2[2][2] = ' ';
    arr2[2][3] = 'S';
    arr2[3][0] = ' ';
    arr2[3][1] = ' ';
    arr2[3][2] = ' ';
    arr2[3][3] = 'T';

    for(i=0;i<4;i++){
        for(j=0;j<4;j++){
            if(arr1[i][j]!=arr2[i][j]){
                s = arr2[i][j];
                t = Character.toString(s);
                out = builder.append(t).toString();
            }
        }
    }
    ok.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View arg0) {
            // TODO Auto-generated method stub
            output.setText(out);
            }
    });

前もって感謝します...

4

1 に答える 1

0

「P」を取得できない理由は、arr1[0][3]!=arr2[0][3] が false である場合、条件が無効であるためです。この場合、条件チェック if("P"!= "P") は偽であるため、ループは条件を無視します。

ただし、「O」、「S」、および「T」は「 」と比較されるため、「OST」が追加されます。

ここから回避するか、要件について詳しく説明してください。

于 2013-02-17T07:28:36.817 に答える