「diceOutCome2」のようなプロパティの場合、実際には、のようなインデックス番号を持つリストを使用することをお勧めしますcounter.diceOutCome[2]。これにより、diceOutcomesのすべてのリストを簡単に反復したり、counter.diceOutCome[n-1]nが5の場合のように5番目のダイス結果の前の結果を参照したりできます。
ホーンベットは、以前に参照したカウンターオブジェクト(counter.highHorn(5)ハイホーンベットの勝ち負けを評価できますcounter.diceOutcome[5])、またはダイロールの結果を表すために使用されるオブジェクトのいずれかに対するメソッドとして計算できます。そのリストは次のとおりです。のように、diceOutComeに保持されcounter.diceOutcome[5].highHorn()ます。または、 ;HighHornのサブクラスである可能性があります。BetのインスタンスはHighHornDiceOutcomeを使用して構築され、サブクラスで実装されるように、で抽象的に定義されHighHornたメソッドを実装します-として評価します。diceOutcomesはすべてにアタッチされているため、これは関連するメソッドに渡す論理アイテム、またはそれらのメソッドを定義する論理アイテムである可能性があります。wins()BetHighHorn(counter.diceOutCome[5]).wins()counter
一般に、変数名を末尾の数字で定義することを考え始めた場合、たとえば、、がプログラムsomething1で使用される場合は、すぐに停止して、というリストに置き換え、 。などのリストインデックスを使用してそれらにアクセスする必要があります。something2something3somethingssomethings[2]
(注-コミュニケーションを容易にするために、説明に対応するために1ベースのインデックスを使用しています-実際には、シーケンス内のアイテムへのインデックスは0ベースであるため、5番目のアイテムは実際にはsequence[4]その前のアイテムとして参照されますはsequence[4-1], the 1st item being found atsequence[0]`です。要点は、これは、変数名の数字の接尾辞ではなく、インデックスが意味をなす場合です。)