2009-03-02 11 views
1

J'ajoute une nouvelle méthode à la classe String dans Ruby, Comment puis-je obtenir la valeur de la classe?Obtenir la valeur de chaîne dans la classe de chaîne

.: par exemple

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. 

Merci

+0

Tout d'abord, vous n'avez pas besoin de utiliser des parenthèses d'argument vides dans Ruby. Ils sont facultatifs. Deuxièmement, les noms de méthodes sont généralement soulignés, pas chameau. –

Répondre

4

Vous devriez être en mesure d'accéder à la valeur de chaîne réelle en se référant à self:

class String 
    def myMethodName() 
     self 
    end 
end 

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

Comment l'utilisation de "soi"? Étant donné que vous ajoutez la méthode a à String, self fait référence à la chaîne elle-même.

Je suppose que si vous n'êtes pas certain, vous pouvez utiliser "self to_s" pour vous assurer que vous obtenez vraiment la valeur de chaîne de l'objet environnant.

donc:

def mymethod(args) 
    self 
end 

devrait faire l'affaire

Questions connexes