Strings können in `[]` nicht in int geändert werden
In Ruby versuche ich, einen String in Int in-Operator umzuwandeln. '[]
' Aber scheiterte. Hier ist der Code (meine Eingabe ist14 45
):
STDIN.gets.split(/\s+/).each do |str|
book = tags[str.to_i] # book is just a new variable. tags is an array
end
Der Rubin stoppt mit einem Fehler:in '[]': no implicit conversion of String into Integer (TypeError)
Also ändere ich meinen Code wie folgt (dieser funktioniert gut):
STDIN.gets.split(/\s+/).each do |str|
number = str.to_i # for converting
book = tags[number]
end
Dieser funktioniert gut. Aber ich muss noch eine Zeile für die Konvertierung hinzufügen. Gibt es eine gute Möglichkeit, diese Linie zu vermeiden? Meine Version von Ruby ist:$: ruby --version ==> ruby 2.0.0p0 (2013-02-24 revision39474) [i686-linux]
Hallo Leute, bitte lasst mich WISSEN, warum Ihr dieses Thema noch schließen wollt. VIELEN DANK.