590 Stimmen

Was ist der Unterschied zwischen equal?, eql?, === und ==?

Ich versuche, den Unterschied zwischen diesen vier Methoden zu verstehen. Ich weiß standardmäßig, dass == ruft die Methode equal? die true zurückgibt, wenn beide Operanden auf genau dasselbe Objekt verweisen.

=== ruft standardmäßig auch == die aufruft equal? ... okay, also wenn alle diese drei Methoden nicht außer Kraft gesetzt werden, dann schätze ich === , == y equal? genau das Gleiche tun?

Jetzt kommt eql? . Was geschieht dabei (standardmäßig)? Erfolgt ein Aufruf des Hash/der ID des Operanden?

Warum hat Ruby so viele Gleichheitszeichen? Sollen sie sich in der Semantik unterscheiden?

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X