Ruby 初心者スレッド ..
[
2ch
|
▼Menu
]
■コピペモード
□
スレを通常表示
□
オプションモード
□このスレッドのURL
■項目テキスト
269:チンパンジー愛ちゃん 09/08/19 03:51:55 > しかし、hout[ary[i]] = hinの所をどのようにh["unknownkey"] += unknownvalue と > 結びつけるかわかりません。h["unknownkey"] += unknownvalue はhinの方ですよね うんにゃ、違うよ。hinじゃないよ。 h["unknownkey"] += unknownvalue と結びつけて考えないといけないのは以下の箇所 hout[ary[i]] = hin# ここを以下のように変更すれば期待通りに動くはず hin.each do |key, value| hout[ary[i]][key] += value end 270:デフォルトの名無しさん 09/08/19 04:43:35 的確なレスもできないくせにコテうぜえ 271:デフォルトの名無しさん 09/08/19 05:30:04 ナツノオモイデ君はどこでも厄介だ >>265 本当に何も考えていないWindows用スクリプトなのなら日本語はShiftJIS決め打ちだろ 入力する日本語を全部ShiftJISにして$KCODE相当もShiftJISにしてみ 272:デフォルトの名無しさん 09/08/19 06:01:39 >>245 arr = Array.new p arr[3] #=> nil これを「nil ではなく 0」にしたいのだと推測 できません 「arr[3] が nil なら 0 を代入」という手順を経るのが通例です この明示的な動作で要素3までの配列が確定され、「空」だった要素にはnilが代入されます 配列の自動初期値設定というのはあったらあったで便利っぽい機能なんですが、おそらくは 「nil以外のオブジェクトが勝手に若い要素全てに代入される」 という動作が Ruby 添付クラス的にキモいということで嫌われたのでしょう もし必要なサイズがあらかじめわかっているのなら、その大きさの配列を作って Array#fill で埋めるか arr = Array.new(5) arr.fill{ 0 } p arr[3] #=> 0 p arr #=> [0, 0, 0, 0, 0] あるいは new のときにやっちゃってください arr = Array.new(5){ 0 } p arr[3] #=> 0 p arr #=> [0, 0, 0, 0, 0] [] メソッドで参照しただけで若い要素が 0 で埋まる配列クラスと言うのを自作しても構いませんが、多分動作遅いと思われます
次ページ
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
レスジャンプ
mixiチェック!
Twitterに投稿
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch
5389日前に更新/180 KB
担当:undef