ループからのプリントアウトで小さな問題が発生しました。
String str1 = null;
for (int row=0; row<dfsa.length; row++) {
System.out.print("\tstate " + row +": ");
for (int col=0; col<dfsa[row].length; col++) {
for (int i=0; i<dfsa_StateList.size(); i++) { // traverse thru dfsa states list
if (dfsa_StateList.get(i).equals(dfsa[row][col])) {
str1 = alphabetList.get(col)+ " " + i + ", ";
System.out.print(str1);
}
}
}
System.out.println();
}
コードの説明: 2D 配列 (行と列) をトラバースし、次に各スロットから別の 1D arrayList をトラバースします。arrayList のスロットが 2D 配列のスロットと一致する場合は、2D 配列の列とインデックスを出力します。 arrayList の
出力例:
state 0: b 1, c 2,
state 1: e 3,
state 2: a 4,
state 3: a 5,
state 4: r 6,
state 5: r 7,
state 6: e 8,
state 7:
state 8:
1 つの行に 2 つの一致があるため、b 1 と c 2 は同じ行にあります。1 つの行内で 2 つの一致を区切るためにカンマのみが必要です。一部の正規表現がオンラインで見つかりましたが、機能しませんでした
さらに、最後の 2 行 (状態 7 と 8) に「なし」を表示したいと考えています。私もそれをやろうとしてきましたが、まだ運がありません。
アドバイスをお願いします、ありがとう