Czy istnieje prosty sposób sprawdzenia, czy kilka zmiennych ma tę samą wartość w ruby?Prosty sposób na sprawdzenie, czy wiele zmiennych ma tę samą wartość, ruby
Coś linke to:
if a == b == c == d #does not work
#Do something because a, b, c and d have the same value
end
Oczywiście możliwe jest, aby sprawdzić każdą zmienną przeciwko mistrza aby sprawdzić, czy wszystkie są prawdziwe, ale to jest składnia nieco więcej i nie jest tak oczywiste.
if a == b && a == c && a == d #does work
#we have now tested the same thing, but with more syntax.
end
Innym powodem, dla którego potrzebujesz czegoś takiego, jest fakt, że faktycznie wykonujesz pracę nad każdą zmienną przed testowaniem.
if array1.sort == array2.sort == array3.sort == array4.sort #does not work
#This is very clear and does not introduce unnecessary variables
end
#VS
tempClutter = array1.sort
if tempClutter == array2.sort && tempClutter == array3.sort && tempClutter == array4.sort #works
#this works, but introduces temporary variables that makes the code more unclear
end
Nicea. To byłby zdecydowanie lepszy sposób niż przy zmiennych temp.! – Automatico
Zauważ, że nie możesz użyć 'one?', Jeśli mają być 'nil' lub' false'. – sawa
Niestety było tak pięknie. –