0

文字列変数codigo = "0001"を整数に変換し、その値を 1 ずつ増やしたいのですが、以前はこれを使用していましたcodigo.to_i += 1が、明らかにそのメソッドは Rails 3 で廃止されました。Rails 3 でこれを行う方法はどれですか?

4

1 に答える 1

4

ここでの基本的な問題は、変数codigoが文字列であることです。

codigo.to_i整数を返しますが、呼び出された変数の型は変更されないため、まだ文字列です。整数を返すメソッドを呼び出しただけです。

codigo.to_i + 12 を返します。

codigo.to_1 += 1戻り値がどの変数にも含まれていないため、エラーが発生し、インクリメントできません。

したがって、変数を整数に変換してインクリメントするには、次のようにします。

codigo = codigo.to_i
codigo += 1

より理にかなっている場合は、これを 1 行で行うこともできます。

codigo = codigo.to_i + 1
于 2012-10-18T15:30:43.753 に答える