2009-03-02 12 views
1

Ich füge eine neue Methode zur String-Klasse in Ruby, Wie kann ich den Wert der Klasse erhalten?Get String Wert in String-Klasse

z.B .:

class String 
def myMethodName(arguments) 
    # here I want the string value 
end 
end 

puts "Lennie".myMethodName() 
# this should return "Lennie" or whatever the value of the string is. 

Dank

+0

Erstens brauchen Sie nicht zu Verwenden Sie leere Argumentklammern in Ruby. Sie sind optional. Zweitens werden Methodennamen in der Regel unterstrichen, nicht in Kamelen. –

Antwort

4

Sie sollten den aktuellen String-Wert unter Bezugnahme auf self zugreifen können:

class String 
    def myMethodName() 
     self 
    end 
end 

puts "Lennie".myMethodName() 
# => "Lennie" 
1

Wie wäre es "Selbst" mit?

Wenn Sie die a-Methode zu String hinzufügen, bezieht sich self auf die Zeichenfolge selbst. Ich nehme an, wenn Sie nicht sicher sind, könnten Sie "self to_s" verwenden, um sicherzustellen, dass Sie wirklich den String-Wert des umgebenden Objekts erhalten.

so:

def mymethod(args) 
    self 
end 

sollte es tun