0ベースの場合、プレースホルダを追加して1ベースにするにはどうすればよいですか?ありがとうございました。Collection(Of T)は0ベースの配列または1ベースの配列ですか?
答えて
0ベース。返信の質問は次のようになります:なぜを1ベースにしますか?拡張メソッドで
あなたは(あなたが望んでいた場合)可能性が行います
<Extension()>
Public Function GetOneBased(Of T)(ByVal list As IList(Of T), ByVal index As Integer) As T
Return list(index-1)
End Function
<Extension()>
Public Sub SetOneBased(Of T)(ByVal list As IList(Of T), ByVal index As Integer, ByVal value As T)
list(index-1) = value
End Sub
は、(ほぼすべてのコレクションから)を使用します。
Dim foo = data.GetOneBased(1)
data.SetOneBased(1, bar)
古いコードは1ベースのコレクションを使用していたので、今は単純化していますが、0ベースの場合、ステートメントの変更が必要です。だから... –
アダム:VB翻訳サービスのおかげで;-p –
これは0ベースです。あなたがそれを1にしたいのであれば、なぜインデックスを受け入れる読み込みメソッドを作成してそれを削除し、それを使って値を返すのですか?
あなたは位置0にある項目を挿入するためにInsert(int index, T item)を使用することができますしかし、私はあなたが0ベースのコレクションとしてインデックスの算術と参照を行う方が良いと思います。これは、ほとんどのプログラマーがあなたが期待した後に来るものです。 @ Robertの拡張メソッドの考え方には価値がありますが、コードの最終的な保守担当者を混乱させるでしょう。
なぜ1ベースにしたいのですか? VB.Netの配列では、0ベースのインデックスも使用されていました。
- 1. ベース1配列をベース0配列に変更
- 2. 配列が0ベースで、1ベースではないのはなぜですか?
- 3. ランキング配列ベース
- 4. libspotify APIインデックスパラメータ。 0ベースまたは1ベース?
- 5. 配列インデックスはVB6で0ベースですか?
- 6. 配列ベースのバイナリツリープリオーダ
- 7. プロパティ値のスプライス配列ベース
- 8. Javaで配列ベースのグラフを生成
- 9. ベース64 char配列や文字列
- 10. OpenCvとグリップビジョンマシンのベース[TypeError:srcは配列がスカラーではない]
- 11. 配列をベースにマージする
- 12. ベース64文字配列または文字列azureサーバーの長さが無効
- 13. 配列から文字列ベースのオブジェクトを抽出する
- 14. PHPでJSONベースの配列を作るには
- 15. 名前ベースのオブジェクト配列を作成するには?
- 16. 配列[beg [0]:end [0]、beg [1]:end [1]、...]
- 17. true-falseまたは0と1の配列のヒートマップ
- 18. 配列を含むJavaScript配列の長さは0です。
- 19. Zend Studio(または他のEclipseベースのIDE)のオブジェクトの配列に対するヒント/補完
- 20. 0-1無限整数配列のナップザック?
- 21. `query [name_value [0]] = name_value [1];で配列destruturingとは何ですか?
- 22. 配列を使う方法x [0]またはx [1]
- 23. Javaベースのソフトウェアの配布方法は?
- 24. 2D配列または配列の配列VBA
- 25. Jaudiotagger getAll(FieldKey.COMMENT)は0と1の配列を返します
- 26. チェックボックスの値に一意の配列ベースを生成する
- 27. ベース64バイトの配列がクロムで動作しない
- 28. 要素配列PHPベースの第1文字値をグループ化する
- 29. 配列<T>と配列の相違点<T^>ここでTは値の型です
- 30. サブ配列 "nModified"でネストされた配列から削除:0
これを考慮しても*本当に*良い理由があります。 0ベースのコンテナの世界で1ベースのコンテナに切り替えると、将来このコードを維持または使用しなければならないプログラマーが混乱することが保証されます。 –
あなたの警告のおかげで、私は別の方法を見つけるでしょう –