Next Previous Contents

9. <2.2>: Variabler

I Ruby har ikke en variabel noen statisk type. En variabel er bare et navn man forbinder med en referanse til et objekt. (Dette er den korte forklaringen på hva dynamisk typing er.)

  1| x = 'Norge'  # Se, jeg er en tekst-streng (String).
  2| x = [1,2,3]  # Øh, jeg mener en Array.
  3| x = 5        # Ups, nå er jeg en Fixnum.
  4| 
  5| # Tilordninger kan lenkes
  6| a = b = c = d = 5
  7| 
  8| # Du trenger ikke ekstra variable for å bytte to verdier
  9| x = 5
 10| y = 3
 11| x, y = y, x  # Nå er x = 3 og y = 5
 12| 
 13| # Ruby bruker prefiks for å angi variabel skop
 14| $global_variabel   = 'alle kan se meg!'
 15| lokal_variabel     = 'sånn som x, y, a, b, c etc.'
 16| @instans_attributt = 'jeg tilhører det gjeldende objekt.'
 17| @@klasse_attributt = 'jeg er felles for mange objekter.'
 18| KONSTANT_VARIABEL  = 'en selvmotsigelse?'

Attributter kalles også instansvariable eller felt.

Enhver variabel som begynner med stor forbokstav er konstant i Ruby. Konstant vil si at variabelreferansen er konstant, ikke at objektet ikke kan endre tilstand. (Ønsker du sistnevnte, prøv freeze)


Next Previous Contents