English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
في هذا الفصل سنقدم لكم أنواع البيانات الأساسية لـ Ruby.
يتم دعم أنواع البيانات في Ruby الأساسية مثل Number، String، Ranges، Symbols، والقيم الخاصة مثل true، false وnil، بالإضافة إلى بنيات البيانات المهمة مثل Array وHash.
يوجد نوعان من الأعداد الصحيحة، إذا كان في 31 موقعًا داخلاً (بأربعة بايت)، فإنه يكون Fixnum مثال. إذا كان أكثر من ذلك، فإنه يكون Bignum مثال.
من -230 إلى 230-1، في هذا النطاق من الأعداد هي نوع Fixnum للمعادلات، عندما يكون قيمة العدد أكبر أو تساوي 2^30 ( -262 إلى 262-1)، سيتم تحويله تلقائيًا إلى نوع Bignum.
يمكنك استخدام علامة استفهام اختيارية قبل عدد صحيح، مؤشر أساسي اختياري (0 للمحايد، 0x للمحايد العشري، 0b للمحايد الثنائي)، يتبعه سلسلة من الأرقام. يتم تجاهل رمز الخط السفلي في سلسلة الأرقام.
يمكنك الحصول على قيمة عددية لـ ASCII حرف أو سلسلة من الرموز المضمنة بواسطة علامة الاستفهام.
123 # Fixnum عشري 1_234 # Fixnum عشري يحتوي على شرطة -500 # Fixnum سالب 0377 # ثماني 0xff # عشري 0b1011 # ثنائي الرمز "a".ord # رمز "a" من الترميز الحرفي ?\n # رمز سطر جديد (0x0a) 12345678901234567890 # الأعداد الكبيرة #نوع الأعداد الصحيحة Integer، إليك بعض القيم المحددة للأعداد الصحيحة #القيمة المحددة (literal):كل قيمة مرئية في الكود، مثل الأعداد، القيم الحقيقية، القيم الحقيقية، النصوص等都 تُدعى قيمة محددة #مثل 0،1_000_000،0xa وما إلى ذلك a1=0 #نوع الأعداد مع علامة الفاصلة الآسيوية a2=1_000_000 #تمثيل الأعداد المختلفة a3=0xa puts a1,a2 puts a3 #puts print هي لطباعة الأحرف على الشاشة، حيث يضيف puts سطرًا جديدًا =begin هذا هو التعليق، يُدعى: تعليقًا مرتبطًا بالوثائق مثل /**/ في C# =end
Ruby يدعم الأعداد العشرية. وهي أرقام تحتوي على أجزاء. Float هي كائن من النوع، ويمكن أن تكون أيًا من الآتي.
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 (الربع)، ثم جذور četvrti
النصوص في Ruby بسيطة وهي سلسلة من 8 بت، وهي كائنات من فئة String.
النصوص المحددة بالكوادس المزدوجة تسمح باستبدال واستخدام علامات النقاط العكسية، أما النصوص المحددة بالكوادس الواحدة فهي لا تسمح باستبدال، وتسمح فقط باستخدام "\\" و "\'".
#!/usr/bin/ruby -w puts 'استخدام "\\"'; puts 'That\'s right';
سيتم إنتاج النتيجة التالية:
استخدام "\" للهروب That's right
يمكنك استخدام سلسلة #{ expr } استبدال قيمة أي تعبير Ruby بتعبير نصي. هنا، expr يمكن أن يكون أي تعبير Ruby.
#!/usr/bin/ruby -w puts "الضرب : #{24*60*60}";
سيتم إنتاج النتيجة التالية:
الضرب : 86400
#!/usr/bin/ruby -w اسم="Ruby" puts اسم puts "#{name+",ok"}"
نتيجة الإخراج هي:
Ruby Ruby,ok
الجدول أدناه يبين الرموز المضادة المدعومة من قبل Ruby:
الرمز | المحاولة الممثلة |
---|---|
\n | النقطة (0x0a) |
\r | الإدخال (0x0d) |
\f | الصفحة (0x0c) |
\b | السحابة (0x08) |
\a | الصفير (0x07) |
\e | الرمز المضاد (0x1b) |
\s | الفضاء (0x20) |
\nnn | التمثيل بالسلسلة الثمانية (n هو 0-7) |
\xnn | التمثيل بالسلسلة العشرية (n هو 0-9، a-f أو A-F) |
\cx, \C-x | Control-x |
\M-x | Meta-x (c | 0x80) |
\M-\C-x | Meta-Control-x |
\x | حرف x |
للحصول على مزيد من التفاصيل حول نص Ruby، يرجى الرجوع إلى نص Ruby (String)。
تعريف نص مجموعة من خلال [] باستخدام الفواصل، ودعم نطاقات
(1) يمكن الوصول إلى المجموعة من خلال الرمز []
(2) من خلال العمليات الافتراضية للاضافة والإزالة والتبديل للعناصر
(3) من خلال الرموز +، - للدمج والإزالة، وتظهر المجموعة كجديدة
(4) من خلال الرمز << للاضافة إلى البيانات الأصلية
(5) من خلال الرمز * لاستنساخ عناصر المجموعة
(6) من خلال الرموز | و & لتحقيق التمايز والالتقاء (تأكد من الترتيب)
#!/usr/bin/ruby ary = [ "fred", 10, 3.14, "هذا هو النص", "القطعة الأخيرة", ] ary.each do |i| puts i fin
سيتم إنتاج النتيجة التالية:
fred 10 3.14 هذا هو نص القطعة الأخيرة
للحصول على مزيد من التفاصيل حول مجموعة Ruby، يرجى الرجوع إلى مجموعة Ruby (Array)。
حلقة Ruby هي مجموعة من أزواج المفاتيح/القيم تُوضع داخل حروف المفتاح، وتُفصل المفاتيح والقيم بفاصلة وـ =>. يتم تجاهل الفاصلة في نهاية الحلقة.
#!/usr/bin/ruby hsh = colors = { "الأحمر" => 0xf00, "الأخضر" => 0x0f0, "الأزرق" => 0x00f } hsh.each do |key, value| اطبع مفتاح، "،هو "، القيمة، "\n" fin
سيتم إنتاج النتيجة التالية:
الأحمر هو 3840 الأخضر هو 240 الأزرق هو 15
للحصول على مزيد من التفاصيل حول حلقة Ruby، يرجى الرجوع إلى حلقة Ruby (Hash)。
يتم تمثيل النطاق كمنطقة.
يتم تمثيل النطاق عن طريق تعيين قيمة بدء و قيمة نهاية. يمكن بناء النطاق باستخدام s..e و s...e أو باستخدام Range.new.
يتم إنشاء النطاقات باستخدام .. من بدء القيمة إلى نهاية القيمة (تتضمن نهاية القيمة). يتم إنشاء النطاقات باستخدام ... من بدء القيمة إلى نهاية القيمة (لا تتضمن نهاية القيمة). عند استخدامها كمحول، تعود النطاقات إلى كل قيمة في السلسلة.
النطاق (1..5) يعني أنه يحتوي على القيم 1،2،3،4،5،النطاق (1...5) يعني أنه يحتوي على القيم 1،2،3،4 .
#!/usr/bin/ruby (10..15).each do |n| print n, ' ' fin
سيتم إنتاج النتيجة التالية:
10 11 12 13 14 15
للحصول على معلومات تفصيلية حول نطاق Ruby، يرجى الرجوع إلى نطاق Ruby (Range)。