Wie um zu überprüfen, ob ein `Integer` ist größer als die andere "Integer" "leicht" / "effizient"?
Ich bin mit Ruby-on-Rails-3.2.2, und ich möchte, um zu überprüfen, ob eine Integer
größer ist als 0
und, mehr im Allgemeinen, wenn eine Integer
ist größer als die andere Integer
.
Gibt es einige Ruby-oder Ruby on Rails Methode zu machen, die "leicht" /"effizient"?
Hinweis: ich möchte /Staat, dass Methode in meinen Dateien anzeigen, und ich denke, dass, wenn diese Methode nicht "existieren", könnte es besser sein, um eine "dedicated" - Methode in meinem model-oder controller-Datei und verwenden Sie diese Methode in meinen Ansichten.
Es gibt keine
Ja, kannst du sagen, warum die
(Und comparisson Operatoren in Ruby - Methoden. Hier ist die Vergleichbar-Modul - beachten Sie, dass
Ich habe nie gesagt "die
Aber Sie hat auch nicht erklärt wurde, warum sagte Methoden (mit syntaktischen Magie) sind nicht "einfach" oder "effizient" ..
a > b
?Ja, kannst du sagen, warum die
>
, >=
, <
, <=
, ==
und !=
Operatoren nicht für Sie arbeiten? Die Integer
Klasse nutzt die Comparable
Modul, die diesen Betreibern zur Verfügung.(Und comparisson Operatoren in Ruby - Methoden. Hier ist die Vergleichbar-Modul - beachten Sie, dass
>
ist nur eine Methode definiert, in der es, obwohl es ist spezialisiert in Fixnum.)Ich habe nie gesagt "die
>
, >=
, <
, <=
, ==
und !=
Operatoren nicht für mich arbeiten".Aber Sie hat auch nicht erklärt wurde, warum sagte Methoden (mit syntaktischen Magie) sind nicht "einfach" oder "effizient" ..
1 > 2
entspricht 1.__send__(:>, 2)
und sowohl das Ergebnis false zurück.InformationsquelleAutor user12882 | 2012-08-08
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wie gezeigt hier:
Können Sie standard-Ruby-in Ihren Ansichten zwischen
<%
und%>
. Und ja, Sie umsetzen konnte ein Helfer tun, um den check-in und verwenden, die helper-Methode in Ihrem Blick.InformationsquelleAutor Florian
Immer, wenn ich starten Sie den Vergleich mehr als zwei Ganzzahlen, die ich in der Regel wiederherstellen array#max.
Die primäre Schwäche ist, wenn a == b, so ist eine Besondere Prüfung erforderlich ist. Oder Sie tun können:
oder
BEARBEITEN:
Diese Methode würde wohl am besten passen in Ihre Helfer.
c = a < b ? a : b
und hier ist es:c = [a, b].min
InformationsquelleAutor Daniel Evans