Mae Ruby yn iaith raglennu sy'n adnabyddus am ei symlrwydd a'i harddwch. Un o'r nodweddion pwysig sy'n ei gwneud hi'n hawdd i ddatblygu cod clir a chydlynol yw'r datganiad case. Yn yr erthygl hon, byddwn yn archwilio sut i ddefnyddio'r datganiad case yn Ruby, gan ei wneud yn hawdd i chi ei ddeall a'i ddefnyddio yn eich prosiectau.
Mae'r datganiad case yn ffordd o wneud penderfyniadau yn Ruby. Mae'n caniatáu i chi gymharu gwerth penodol â nifer o ddewisiadau, gan wneud y cod yn haws i'w ddarllen a'i gynnal. Mae'n debyg i'r datganiad if, ond mae'n fwy effeithlon pan fydd gennych sawl amod i'w hystyried.
Mae'r strwythur sylfaenol ar gyfer datganiad case yn Ruby fel a ganlyn:
casewhen # cod i'w weithredu pan fydd yn cyfateb i when # cod i'w weithredu pan fydd yn cyfateb i else # cod i'w weithredu os nad yw yn cyfateb i unrhyw un o'r gwerthoedd end
Mae'r datganiad case yn dechrau gyda'r gair 'case', yn dilyn gwerth y byddwch chi'n ei gymharu. Mae pob 'when' yn cynrychioli gwerth y gallai'r newidyn fod, a'r 'else' yn cynnig opsiwn os nad yw'r gwerth yn cyfateb i unrhyw un o'r 'when'.
Gadewch i ni edrych ar enghraifft syml o sut i ddefnyddio datganiad case i benderfynu ar y diwrnod o'r wythnos:
diwrnod = "Dydd Llun" case diwrnod when "Dydd Llun" puts "Mae'n ddechrau'r wythnos!" when "Dydd Gwener" puts "Mae'n ddiwrnod penblwydd!" else puts "Mae'n ddiwrnod arall." end
Yn yr enghraifft hon, os yw'r newidyn 'diwrnod' yn cyfateb i "Dydd Llun", bydd y neges "Mae'n ddechrau'r wythnos!" yn cael ei argraffu. Os yw'n "Dydd Gwener", bydd y neges "Mae'n ddiwrnod penblwydd!" yn cael ei argraffu. Os nad yw'n cyfateb i unrhyw un o'r gwerthoedd, bydd "Mae'n ddiwrnod arall." yn cael ei argraffu.
Gallwch hefyd ddefnyddio datganiad case i wirio am sawl gwerth ar yr un pryd. Dyma enghraifft sy'n dangos sut i wneud hynny:
cynnyrch = "afal" case cynnyrch when "afal", "bananau", "grawnffrwyth" puts "Mae hwn yn ffrwyth!" when "cennin", "moron" puts "Mae hwn yn llysieuyn!" else puts "Nid wyf yn siŵr beth yw hwn." end
Yn yr enghraifft hon, os yw 'cynnyrch' yn "afal", "bananau", neu "grawnffrwyth", bydd y neges "Mae hwn yn ffrwyth!" yn cael ei argraffu. Os yw'n "cennin" neu "moron", bydd y neges "Mae hwn yn llysieuyn!" yn cael ei argraffu. Os nad yw'n cyfateb i unrhyw un o'r gwerthoedd, bydd "Nid wyf yn siŵr beth yw hwn." yn cael ei argraffu.
Gallwch hefyd ddefnyddio datganiad case i gymharu gwerthoedd amgen, fel rhifau neu eitemau yn y rhestr. Dyma enghraifft sy'n dangos sut i wneud hynny:
nifer = 3 case nifer when 1 puts "Un" when 2 puts "Dau" when 3 puts "Tri" else puts "Nid wyf yn siŵr." end
Yn yr enghraifft hon, os yw 'nifer' yn 3, bydd y neges "Tri" yn cael ei argraffu. Mae'r datganiad case yn caniatáu i chi ddelio â phenderfyniadau yn hawdd a chydlynol.
Gallwch hefyd ddefnyddio datganiad case i wneud gweithrediadau mwy cymhleth. Dyma enghraifft sy'n dangos sut i ddefnyddio datganiad case i gyfrifo'r swm o arian yn seiliedig ar y math o ddirprwy:
dirprwy = "gold" case dirprwy when "silver" swm = 100 when "gold" swm = 200 when "platinum" swm = 300 else swm = 0 end puts "Y swm yw #{swm}."
Yn yr enghraifft hon, os yw 'dirprwy' yn "gold", bydd y swm yn cael ei osod i 200. Mae'r datganiad case yn caniatáu i chi wneud penderfyniadau yn seiliedig ar amodau penodol, gan wneud y cod yn haws i'w ddeall.
Mae datganiad case yn Ruby hefyd yn cefnogi cymharu gwerthoedd amgen. Dyma enghraifft sy'n dangos sut i gymharu gwerthoedd gyda gweithrediadau:
nifer = 10 case when nifer < 5 puts "Mae'n llai na 5." when nifer < 10 puts "Mae'n llai na 10." when nifer < 15 puts "Mae'n llai na 15." else puts "Mae'n 15 neu fwy." end
Yn yr enghraifft hon, bydd y datganiad case yn gwirio'r gwerth o 'nifer' heb ei benodi'n benodol. Mae'n caniatáu i chi wneud penderfyniadau yn seiliedig ar amodau mwy cymhleth.
Mae'r datganiad case yn Ruby yn offeryn pwerus sy'n caniatáu i chi wneud penderfyniadau yn hawdd a chydlynol. Mae'n cynnig dull syml o gymharu gwerthoedd a gwneud penderfyniadau yn seiliedig ar y canlyniadau. Trwy ddefnyddio'r datganiad case, gallwch greu cod sy'n hawdd i'w ddarllen a'i gynnal, gan wneud eich prosiectau Ruby yn fwy effeithlon.
Gobeithio bod yr erthygl hon wedi rhoi gwybodaeth fanwl i chi am feistroli'r datganiad case yn Ruby. Peidiwch ag oedi i roi cynnig arno yn eich prosiectau a gweld sut y gall wella eich cod!
© 2024 RailsInsights. All rights reserved.