通過前面的學(xué)習(xí)庄新,我們已經(jīng)學(xué)了字符串和數(shù)字的輸出择诈,但是很可惜出皇,所學(xué)的知識(shí)已經(jīng)有些過時(shí)了(╥╯^╰╥)
比如現(xiàn)在我們想要輸出一段話兩次,不得不鍵入兩遍:
puts '...you can say that again...'
puts '...you can say that again...'
...you can say that again...
...you can say that again...
假如我們只寫一遍然后存起來就沒事了荷科,那倒是無所謂纱注,但是如果要經(jīng)常這樣寫兩遍,那我就不會(huì)這樣做刻获!
為了把字符串保存到電腦內(nèi)存中蝎毡,我們需要給字符串起個(gè)名字佑颇。這個(gè)起名字的過程在編程中就稱為賦值,而這個(gè)字符串的名字就稱為變量痒筒。變量的命名可以用字母和數(shù)字隨意組合,但要求第一個(gè)字符必須是小寫字母移袍。我們?cè)賮碓囋嚿蟼€(gè)例子老充,這次我將會(huì)命名字符串為myString(當(dāng)然我也可以命名為str 或myOwnLittleString 或 henryTheEighth亨利八世
).
myString = '...you can say that again...'
puts myString
puts myString
不論你何時(shí)對(duì)myString進(jìn)行操作啡浊,程序總會(huì)用“…you can say that again…”來代替。你可以認(rèn)為變量myString總是指向字符串“…you can say that again…”的喘先。下面是個(gè)稍有趣的例子:
name = 'Patricia Rosanna Jessica Mildred Oppenheimer'
puts 'My name is ' + name + '.'
puts 'Wow! ' + name + ' is a really long name!'
同樣的廷粒,正如我們能將某個(gè)對(duì)象賦值給一個(gè)變量坝茎,我們也能以重新將一個(gè)不同的對(duì)象賦值給這個(gè)變量(這就是為什么我們稱之為變量:因?yàn)樗麄冎赶虻膶?duì)象是可以變換的)
composer = 'Mozart'
puts composer + ' was "da bomb", in his day.'
composer = 'Beethoven'
puts 'But I prefer ' + composer + ', personally.'
當(dāng)然變量能指向任何對(duì)象嗤放,而不僅限于字符串:
var = 'just another ' + 'string'
puts var
var = 5 * (1+2)
puts var
輸出為:
just another string
15
事實(shí)上變量能夠指向任何對(duì)象,除了指向其他變量搔涝。因此如果我們這樣做會(huì)發(fā)生什么呢和措?
var1 = 8
var2 = var1
puts var1
puts var2
puts ''
var1 = 'eight'
puts var1
puts var2
輸出:
首先我們將
var2
指向var1
,結(jié)果var2
確實(shí)指向了8
(和var1
指向的一樣)派阱。然后我們將var1
指向了eight
,但鑒于var2
沒再指向var1
,它依舊指向8
.
至此我們已經(jīng)學(xué)了變量斜纪、數(shù)字、字符串腺劣,之后讓我們來學(xué)習(xí)將他們混合起來將會(huì)如何因块!