2017-06-30 4 views
-2

だから、このタイプの配列を作成したいと思います。この配列には重複する値があることに注意してください。だから私はhashMapのを使用することはできません。Ruby配列の値をオブジェクトとして持つ配列を作成するには

arr = [3,4,6,4,9,0] 

また、私はこれを行うことができるようになります。

arr[0].value = 9 
arr[1].value = 10 

は、データ構造のこのタイプで私を助けてください。私がJavaとRubyの1つの例を得ることができれば素晴らしいだろう。
わかりやすいもう1つの例。

arr['tom','jack', 'Ian','sam'] 

各配列要素にlastNameのプロパティを追加する必要があります。だから私のデータ構造は、このプロパティを追加した後です。

arr['tom'].lastName = 'smith' 
arr['jack'].lastName = 'parker' 
arr['ian'].lastName = 'jones' 
... 

ここでは、クエリの観点から説明します。私は

arr[0] -> 'tom' 
arr[0].lastName -> 'smith' 

を呼び出す場合、これらは私が

+0

ちょうど 'ARR [0] = 9'ルビー –

+0

にしかし、上記の配列のために、それは' ARR [0] = 3 'のこのあなたが探しているでしょうか? –

+0

いいえ配列に重複した要素があるので、私はそれを行うことができません。だから私の最初の配列では、私は重複した値を持っています。 @SergioTulentsev –

答えて

0

あなたの意思が本当に明確ではないので、私はあなたが、配列内の値を置換すると仮定しますが盗んしようとしていた結果です。ルビーでは、あなたが行うことができます:

irb(main):001:0> a = [3, 4, 6, 4, 9, 0] 
[] 
irb(main):002:0> a[1] 
4 
irb(main):003:0> a[1] = 10 
10 
irb(main):004:0> a 
[3, 10, 6, 4, 9, 0] 
+0

arr = [3,4,6,4,9,0]と仮定してから、[1] .value = 10と[3] .value = 15.を割り当てたいから、 1]と[3]の両方が4に等しいので、[1]を行うと4が得られ、[1] .valueを実行すると10が得られます。 –

+0

あなたは何をしたいのですか? – BachirC

+0

ここには何の問題もありません。 'arr [i] = new_value'を実行することで、配列の値を再割り当てすることができます。あなたの例では、ルビで 'a [1] = 10'と' a [3] = 15'を発行すると、配列は '[3、10、6、15、9、0]'になります。ルビに*与えられた*インデックスの値を置き換えるように指示しますが、値は更新されません。 – BachirC