質問があります。先生は私の課題の一部として、配列内のすべての0(ゼロ)をアスタリスク(*)に置き換えるように依頼しました。
これは私のプログラムの出力の例です:
Best Tour: #31
Number of Moves: 57
=====================================
1 16 57 6 0 36 47 0
56 7 0 3 46 5 32 37
17 2 15 8 33 30 35 48
14 55 22 45 4 49 38 31
23 18 13 50 9 34 29 42
54 51 24 21 44 41 26 39
0 12 19 52 25 10 43 28
0 53 0 11 20 27 40 0
=====================================
基本的に、ゼロがある場合は常に、代わりにアスタリスクを表示する必要があります。これはint配列です。値が「*」の文字列を作成してみました。次に、それをintに解析しようとしましたが、次のようになります。
Exception in thread "main" java.lang.NumberFormatException: For input string: "*"
私が試してみるべき他の提案はありますか?
どうもありがとうございました!私は物事を正しく見ていませんでした。いくつかのコメントを読んだ後、配列自体のゼロをアスタリスクに変更しようとしてもあまり意味がないことに気付きました。
そこで、printArray()メソッドを変更して、0のインスタンスで*;を出力するようにしました。それ以外の場合は、そこにあるはずの数値を出力するだけです。
これが今のように見えます:
Best Tour: #45
Number of Moves: 58
=====================================
1 42 13 18 31 44 27 *
58 11 32 43 14 17 30 45
41 2 57 12 19 26 15 28
56 33 10 5 16 29 46 *
3 40 55 34 9 20 25 50
* 37 4 53 6 49 22 47
39 54 35 8 21 24 51 *
36 * 38 * 52 7 48 23
=====================================
あなたは皆とても親切で、私が追加するかもしれない非常に迅速です!どうもありがとう!