Latest web development tutorials
×

Ruby หลักสูตร

Ruby หลักสูตร Ruby แนะนำโดยย่อ Ruby สิ่งแวดล้อม Ruby ติดตั้ง Linux Ruby ติดตั้ง Windows Ruby การเข้ารหัสจีน Ruby เลือกบรรทัดคำสั่ง Ruby ตัวแปรสภาพแวดล้อม Ruby ไวยากรณ์ Ruby ชนิดข้อมูล Ruby คลาสและวัตถุ Ruby กรณีระดับ Ruby ตัวแปร Ruby ผู้ประกอบการ Ruby หมายเหตุ Ruby เงื่อนไข Ruby การไหลเวียน Ruby ทาง Ruby กลุ่ม Ruby โมดูล Ruby เชือก Ruby แถว Ruby กัญชา Ruby วันที่และเวลา Ruby ขอบเขต Ruby iterator Ruby input และ output ไฟล์ Ruby File ชั้นเรียนและวิธี Ruby Dir ชั้นเรียนและวิธี Ruby ผิดปกติ

Ruby การสอนที่ทันสมัย

Ruby เชิงวัตถุ Ruby นิพจน์ปกติ Ruby การเข้าถึงฐานข้อมูล - DBI หลักสูตร Ruby MySQL Ruby CGI โครงการ Ruby CGI ทาง Ruby CGI Cookies Ruby CGI Sessions Ruby ส่ง Email SMTP Ruby Socket โครงการ Ruby XML, XSLT, XPath Ruby Web Services Ruby multithreading Ruby JSON Ruby RubyGems

ทับทิมชนิดข้อมูล

ในบทนี้เราจะมาแนะนำทับทิมชนิดข้อมูลพื้นฐาน

ทับทิมชนิดที่สนับสนุนข้อมูลรวมถึงจำนวนขั้นพื้นฐาน String ช่วงสัญลักษณ์และจริงเท็จและไม่มีค่าพิเศษเหล่านี้เช่นเดียวกับสองโครงสร้างข้อมูลที่สำคัญ --Array และกัญชา


ชนิดค่า (จำนวน)

1 จำนวนเต็ม (Integer)

จำนวนเต็มสองถ้า 31 หรือน้อยกว่า (สี่ไบต์) มันเป็นเช่น Fixnum ถ้าเป็นเช่นนั้นเป็นเช่น Bignum

ช่วงจำนวนเต็มจาก -2 หรือ -2 30-2 30-1 62-2 62-1 จำนวนเต็มในช่วงนี้เป็นชั้นFixnumจำนวนเต็มวัตถุที่เก็บไว้นอกขอบเขตของชั้นนี้วัตถุBignum

คุณสามารถใช้สัญลักษณ์คำนำตัวเลือกในด้านหน้าของจำนวนเต็มฐานเป็นตัวบ่งชี้ตัวเลือก (0 สำหรับฐานแปด 0x สอดคล้อง hex, 0B สอดคล้องกับ binary) ตามด้วยสตริงของตัวเลข อักขระขีดสตริงตัวเลขจะถูกละเลย

คุณจะได้รับอักขระ ASCII หรือลำดับหนีค่าจำนวนเต็มมีเครื่องหมายคำถาม

ตัวอย่าง

123                  # Fixnum 十进制
1_234                # Fixnum 带有下划线的十进制
-500                 # 负的 Fixnum
0377                 # 八进制
0xff                 # 十六进制
0b1011               # 二进制
"a".ord              # "a" 的字符编码
?\n                  # 换行符(0x0a)的编码
12345678901234567890 # Bignum
#整型 Integer 以下是一些整型字面量 
#字面量(literal):代码中能见到的值,数值,bool值,字符串等都叫字面量 
#如以下的0,1_000_000,0xa等 
a1=0 

#带千分符的整型 
a2=1_000_000 

#其它进制的表示 
a3=0xa 
puts a1,a2 
puts a3 

#puts print 都是向控制台打印字符,其中puts带回车换行符 
=begin 
这是注释,称作:嵌入式文档注释 
类似C#中的/**/ 
=end 

ลอย

สนับสนุนทับทิมจุดลอย พวกเขาเป็นตัวเลขที่มีทศนิยมทุ่นลอยเป็นชั้นของวัตถุและสามารถเป็นอย่างใดอย่างหนึ่งดังต่อไปนี้

ตัวอย่าง

123.4                # 浮点值
1.0e6                # 科学记数法
4E20                 # 不是必需的
4e+20                # 指数前的符号
#浮点型 
f1=0.0 
f2=2.1 
f3=1000000.1 
puts f3  

ดำเนินการทางคณิตศาสตร์

ดำเนินการทางคณิตศาสตร์ + - * /; ผู้ประกอบการเพื่อจัดทำดัชนี **

ดัชนีไม่จำเป็นต้องเป็นจำนวนเต็มเช่น

#指数算术 
puts 2**(1/4)#1与4的商为0,然后2的0次方为1 
puts 16**(1/4.0)#1与4.0的商为0.25(四分之一),然后开四次方根 

ประเภทสตริง

สตริงทับทิมเป็นเพียงลำดับของไบต์ 8 บิตซึ่งเป็นวัตถุชั้นสตริง

สตริงของเครื่องหมายอัญประกาศและเครื่องหมายอนุญาตให้สายการทดแทนไม่ได้รับอนุญาตเพื่อแทนที่เครื่องหมายคำพูดเดียวและเพียง แต่ช่วยให้การใช้งานของ \\ และ \ 'สองทับขวา

ตัวอย่าง

ตัวอย่าง

#! / usr / bin / ทับทิม -w

ทำให้ 'หลบหนีโดยใช้ "\\"';
ทำให้ 'นั่น \' s ขวา ';

เล่นอินสแตนซ์»

นี้ก่อให้เกิดผลลัพธ์ต่อไปนี้:

escape using "\"
That's right

คุณสามารถลำดับ# {} expr จะถูกแทนที่ด้วยสตริงของการแสดงออกโดยพลทับทิมใช้นี่ expr สามารถใด ๆ แสดงออกทับทิม

#! / usr / bin / ทับทิม -w

ทำให้ "คูณค่า: # {24 * 60 * 60}";

นี้ก่อให้เกิดผลลัพธ์ต่อไปนี้:

ราคาคูณ: 86400
#!/usr/bin/ruby -w

name="Ruby" 
puts name 
puts "#{name+",ok"}" 

เอาท์พุทคือ:

Ruby
Ruby,ok

ทับขวา

ตารางต่อไปนี้แสดงเครื่องหมายทับทิมที่สนับสนุน:

符号表示的字符
\n换行符 (0x0a)
\r回车符 (0x0d)
\f换页符 (0x0c)
\b退格键 (0x08)
\a报警符 Bell (0x07)
\e转义符 (0x1b)
\s空格符 (0x20)
\nnn八进制表示法 (n 是 0-7)
\xnn十六进制表示法 (n 是 0-9、a-f 或 A-F)
\cx, \C-xControl-x
\M-xMeta-x (c | 0x80)
\M-\C-xMeta-Control-x
\x字符 x

สำหรับรายละเอียดเพิ่มเติมเกี่ยวกับสายทับทิมเห็น ทับทิมสตริง (String)

แถว

อาร์เรย์ที่แท้จริงโดย [] เพื่อกำหนดคั่นด้วยเครื่องหมายจุลภาคและการสนับสนุนคำจำกัดความช่วง

  • (1) ผ่านอาร์เรย์ [] ดัชนีการเข้าถึง
  • (2) โดยมอบหมายให้แทรกลบแทนที่องค์ประกอบ
  • (3) + - ฉบับที่ผสานและลบองค์ประกอบและการเก็บเป็นคอลเลกชันใหม่ปรากฏขึ้น
  • (4) โดยองค์ประกอบข้อมูลเพิ่มเติมมติเดิม <<
  • (5) โดยการทำซ้ำจำนวนองค์ประกอบอาร์เรย์ *
  • (6) | และเครื่องหมายทำยูเนี่ยนและแยกการดำเนินงาน (หมายเหตุการสั่งซื้อ)

ตัวอย่าง:

ตัวอย่าง

#! / usr / bin / ทับทิม
Ary = [ "เฟร็ด", 10, 3.14 "นี่เป็นสตริง", "องค์ประกอบสุดท้าย"]
ary.each ทำ | ฉัน |
ทำให้ฉัน
ปลาย

เล่นอินสแตนซ์»

นี้ก่อให้เกิดผลลัพธ์ต่อไปนี้:

เฟร็ด
10
3.14
นี่คือสตริง
องค์ประกอบสุดท้าย

สำหรับรายละเอียดเพิ่มเติมเกี่ยวกับอาร์เรย์ทับทิมดู อาร์เรย์ทับทิม (อาร์เรย์)

ประเภทกัญชา

ทับทิมกัญชาถูกวางไว้ในชุดการจัดฟันของคู่คีย์ / ค่าใช้เครื่องหมายจุลภาคระหว่างคีย์และค่าและลำดับ => แยก เครื่องหมายจุลภาคต่อท้ายจะถูกละเว้น

ตัวอย่าง

ตัวอย่าง

#! / usr / bin / ทับทิม

HSH = สี = { "สีแดง" => 0xf00 "สีเขียว" => 0x0f0 "สีฟ้า" => 0x00f}
hsh.each ทำ | คีย์ค่า |
ปุ่ม Print "คือ" คุณค่า "\ n"
ปลาย

เล่นอินสแตนซ์»

นี้ก่อให้เกิดผลลัพธ์ต่อไปนี้:

red is 3840
green is 240
blue is 15

สำหรับรายละเอียดเพิ่มเติมเกี่ยวกับกัญชาทับทิมดู กัญชาทับทิม (แฮ)

ประเภทช่วง

แสดงให้เห็นถึงช่วงช่วง

ช่วงเป็นค่าเริ่มต้นและค่าสิ้นโดยการตั้งค่าที่จะเป็นตัวแทน ช่วงของ s..e ใช้งานและ s ... E ที่จะสร้างหรือโดยการสร้าง Range.new

สร้างขึ้นโดยใช้ .. เรียกใช้จากค่าช่วงเริ่มต้นที่จะยุติความคุ้มค่า (รวมค่าตอนจบ) ... สร้างขึ้นโดยใช้การทำงานที่หลากหลายจากมูลค่าเริ่มต้นที่จะคุ้มค่าปลาย (มูลค่าที่สิ้นสุดไม่ได้รวม) เมื่อใช้เป็น iterator ที่จะใช้ช่วงจะกลับแต่ละค่าในลำดับ

ช่วง (1..5) หมายความว่ามันมีค่าเป็น 1, 2, 3, 4, 5, ช่วง (1 ... 5) หมายความว่ามันมีค่า 1, 2, 3, 4

ตัวอย่าง

ตัวอย่าง

#! / usr / bin / ทับทิม

(10..15) .each ทำ | n |
พิมพ์ N, ''
ปลาย

เล่นอินสแตนซ์»

นี้ก่อให้เกิดผลลัพธ์ต่อไปนี้:

10 11 12 13 14 15

สำหรับรายละเอียดเพิ่มเติมเกี่ยวกับช่วงทับทิมดู ช่วงทับทิม (ช่วง)