Ich verwende den folgenden Code, um Strings zu vergleichen, aber es bringt mich immer zum else
. Warum?Wie mache ich String-Vergleich in Ruby?
print("Enter your state abbreviation: ")
state_abbreviation = gets
if state_abbreviation.upcase == "NC"
puts("North Carolina")
elsif state_abbreviation.upcase == "SC"
puts("Sourth Carolina")
elsif state_abbreviation.upcase == "GA"
puts("Georgia")
elsif state_abbreviation.upcase == "FL"
puts("Florida")
elsif state_abbreviation.upcase == "AL"
puts("Alabama")
else
puts("You have enter wrong abbreviation")
end
Ich habe auch .eql?("string")
versucht, aber ich habe das gleiche Ergebnis.
ich sehr gut weiß nicht, Rubin wirklich, aber warum haben diese schwer und zerbrechlich if-if-if-else-Struktur? Verwenden Sie eine HashMap und, wenn Sie nichts zurückbekommen, stellen Sie die Fehlermeldung ein. Dies würde auch das Newline-Problem helfen, jeder trat unten heraus. – MikeHoss
1. Ich bin sehr neu in Ruby, also nicht wissen, ob HashMP dort verlassen? 2. Ich mag Fall-wenn nicht! – itsaboutcode