By using this site, you agree to the Privacy Policy and Terms of Use.
موافق
عرب فلاترعرب فلاتر
  • Dart
  • Widgets
  • Packages
  • Tutorials
  • Flutter Roadmap
  • تثبيت Dart
  • تثبيت Flutter
قراءة: الدرس 3: شرح أنواع البيانات في لغة دارت (Data Types in Dart)
شارك
تسجيل الدخول
إشعار أظهر المزيد
Aa
عرب فلاترعرب فلاتر
Aa
  • Dart
  • Widgets
  • Packages
  • Tutorials
  • Flutter Roadmap
  • تثبيت Dart
  • تثبيت Flutter
Search

أقسام الموقع

استكشف جميع أقسام الموقع
قسم Dart في موقع عرب فلاتر

Dart

59 مقالات
قسم Widgets في موقع عرب فلاتر

Widgets

104 مقالات
قسم Packages في موقع عرب فلاتر

Packages

19 مقالات
قسم Tutorials في موقع عرب فلاتر

Tutorials

22 مقالات

أخر المواضيع

استكشف أخر المواضيع المنشورة
شرح الـ Event Loop في Flutter وجعل التطبيق لا يتوقف أبدًا
Tutorials

شرح الـ Event Loop في Flutter وجعل التطبيق لا يتوقف أبدًا

5
حل مشكلة التوافق بين Java و Kotlin و Gradle في فلاتر
Tutorials

حل مشكلة التوافق بين Java و Kotlin و Gradle في فلاتر

10
أفضل الـ Packages في Flutter لتسريع تطوير التطبيقات
Tutorials

أفضل الـ Packages في Flutter لتسريع تطوير التطبيقات

17
لديك حساب موجود؟ تسجيل الدخول
  • Dart
  • Widgets
  • Packages
  • Tutorials
  • Flutter Roadmap
  • تثبيت Dart
  • تثبيت Flutter
© جميع الحقوق محفوظة موقع عرب فلاتر 2023
عرب فلاتر > Dart > الدرس 3: شرح أنواع البيانات في لغة دارت (Data Types in Dart)
Dart

الدرس 3: شرح أنواع البيانات في لغة دارت (Data Types in Dart)

عبدالله يوسف
أخر تحديث 2024/11/15
بواسطة عبدالله يوسف اضف تعليق 10 دقيقة للقراءة 5676 مشاهدات 16
شارك
شرح أنواع البيانات في لغة درات (Data Types in Dart)
شرح أنواع البيانات في لغة درات (Data Types in Dart)
شارك

خدماتنا البرمجية – عرب فلاتر🚀

خدماتنا البرمجية – عرب فلاتر

في لغة Dart، يعتبر فهم أنواع البيانات (Data Types) أمرًا مهمًا لبناء تطبيقات قوية وموثوقة. تساعد أنواع البيانات في تصنيف البيانات المختلفة التي تستخدم في الأكواد الخاصة بك، مثل الأرقام والنصوص والقوائم والخرائط وغيرها. تحدد أنواع البيانات نوع القيمة التي سيتم تخزينها في المتغير، وتساعد على ضمان صحة العمليات التي تتم على تلك القيم.

المحتويات
أنواع البيانات في لغة Dartالأرقامالنصوصالقيم المنطقية (Booleans)القوائم (Lists)المجموعات (Sets)الخرائط (Maps)الرونات (Runes)القيمة الفارغة (Null)التحويل بين الأنواع المختلفة من البيانات في لغة دارت تحويل النص إلى عدد صحيح في Dartتحويل سلسلة نصية إلى عدد عشريتحويل عدد صحيح إلى سلسلة نصيةتحويل عدد عشري إلى عدد صحيحمعلومات هامة عن النصوص Stringاستخدام اقتباسات العلامات (single quotes و double quotes)إنشاء سلسلة نصية متعددة الأسطرالأحرف الخاصة في السلاسل النصيةإنشاء سلسلة نصية غير معالجة (Raw String)

أنواع البيانات في لغة Dart

لغة Dart تدعم عدة أنواع بيانات مختلفة مثل الأرقام والنصوص والقوائم والخرائط والمجموعات والقيمة الفارغة null. دعنا نلقي نظرة على كل نوع:

الأرقام

تستخدم لتخزين القيم الرقمية في لغة Dart. يمكن استخدام الأرقام الصحيحة (integers) والأرقام العشرية (doubles). يمكن استخدام النوع num لتخزين كلا النوعين من الأرقام. فيما يلي مثال يوضح كيفية استخدام الأرقام في Dart:

void main() {
  int num1 = 100;
  double num2 = 130.2;
  num num3 = 50;
  num num4 = 50.4;

  num sum = num1 + num2 + num3 + num4;

  print("Num 1 is $num1");
  print("Num 2 is $num2");
  print("Num 3 is $num3");
  print("Num 4 is $num4");
  print("Sum is $sum");
}

النصوص

تستخدم لتخزين النصوص والحروف. يمكن استخدام علامات الاقتباس (single quotes أو double quotes) لتعريف السلاسل النصية في Dart. فيما يلي مثال يوضح كيفية استخدام النصوص في Dart:

void main() {
  String schoolName = "Diamond School";
  String address = "New York 2140";

  print("School name is $schoolName and address is $address");
}

القيم المنطقية (Booleans)

تستخدم لتخزين القيم المنطقية true و false. يتم تعريف المتغيرات المنطقية باستخدام الكلمة المفتاحية bool. فيما يلي مثال يوضح كيفية استخدامها في Dart:

void main() {
  bool isRaining = true;
  bool isSunny = false;

  print("Is it raining? $isRaining");
  print("Is it sunny? $isSunny");
}

القوائم (Lists)

تستخدم لتخزين مجموعة من القيم في ترتيب محدد. يمكن الوصول إلى عناصر القائمة باستخدام index خاص بها. فيما يلي مثال يوضح كيفية استخدام القوائم في Dart:

void main() {
  List<int> numbers = [1, 2, 3, 4, 5];

  print("First number: ${numbers[0]}");
  print("Length of list: ${numbers.length}");

  numbers.add(6); // إضافة عنصر جديد إلى القائمة
  numbers.remove(3); // إزالة عنصر من القائمة

  print("Updated list: $numbers");
}

المجموعات (Sets)

تستخدم لتخزين قيم فريدة وغير مكررة. لا يمكن تكرار العناصر في المجموعات. فيما يلي مثال يوضح كيفية استخدام المجموعات في Dart:

void main() {
  Set<String> fruits = {'apple', 'banana', 'orange'};

  print("Fruits: $fruits");

  fruits.add('kiwi'); // إضافة عنصر جديد إلى المجموعة
  fruits.remove('banana'); // إزالة عنصر من المجموعة

  print("Updated fruits: $fruits");
}

الخرائط (Maps)

تستخدم لتخزين أزواج المفاتيح والقيم. يمكن الوصول إلى القيم بواسطة المفتاح الخاص بها. فيما يلي مثال يوضح كيفية استخدام الخرائط في Dart:

void main() {
  Map<String, int> studentScores = {
    'John': 90,
    'Alice': 95,
    'Bob': 80,
  };

  print("Student scores: $studentScores");

  studentScores['Alice'] = 98; // تغيير قيمة مفتاح موجود
  studentScores['Charlie'] = 87; // إضافة مفتاح وقيمة جديدة

  print("Updated student scores: $studentScores");
}

الرونات (Runes)

تستخدم لتمثيل قيم يونيكود في النصوص. يمكن استخدام الرونات لتمثيل الأحرف غير العادية مثل الرموز التعبيرية والإيموجي. فيما يلي مثال يوضح كيفية استخدام الرونات في Dart:

void main() {
  Runes loveSymbol = new Runes('\u2665');

  print("Love symbol: ${String.fromCharCodes(loveSymbol)}");
}

القيمة الفارغة (Null)

تستخدم لتمثيل القيمة الفارغة في Dart. يمكن استخدام القيمة الفارغة للتحقق مما إذا كان المتغير يحتوي على قيمة أم لا. فيما يلي مثال يوضح كيفية التحقق من القيمة الفارغة في Dart:

void main() {
  int? nullableValue = null;

  if (nullableValue == null) {
    print("The value is null");
  } else {
    print("The value is not null");
  }
}


التحويل بين الأنواع المختلفة من البيانات في لغة دارت 

يمكن استخدام هذه الدوال في لغة Dart لتحويل بين الأنواع المختلفة من البيانات، مما يسمح لك بإجراء العمليات المطلوبة وفقًا لاحتياجات تطبيقك:

تحويل النص إلى عدد صحيح في Dart

يمكن تحويل النص إلى عدد صحيح في Dart باستخدام الدالة int.parse() أو int.tryParse().

void main() {
  String numberString = '123';
  int number = int.parse(numberString);

  print('Number: $number');
}

في المثال أعلاه، تم استخدام الدالة int.parse() لتحويل السلسلة النصية '123' إلى العدد الصحيح 123. إذا كانت السلسلة النصية لا تحتوي على قيمة صحيحة صالحة، فسيتم ظهور خطأ FormatException. للتعامل مع هذا الأمر، يمكن استخدام الدالة int.tryParse() التي تحاول تحويل السلسلة النصية إلى عدد صحيح وتعيد null إذا لم يكن ذلك ممكنًا.

void main() {
  String numberString = 'abc';
  int? number = int.tryParse(numberString);

  if (number != null) {
    print('Number: $number');
  } else {
    print('Invalid number');
  }
}

في هذا المثال، سيتم طباعة Invalid number لأن السلسلة النصية 'abc' لا يمكن تحويلها إلى عدد صحيح.

تحويل سلسلة نصية إلى عدد عشري

يمكن تحويل سلسلة نصية إلى عدد عشري (عدد يحتوي على كسور) في Dart باستخدام الدالة double.parse() أو double.tryParse().

void main() {
  String numberString = '3.14';
  double number = double.parse(numberString);

  print('Number: $number');
}

في المثال أعلاه، تم استخدام الدالة double.parse() لتحويل السلسلة النصية '3.14' إلى العدد العشري 3.14. إذا كانت السلسلة النصية لا تحتوي على قيمة عشرية صالحة، فسيتم ظهور خطأ FormatException. يمكن استخدام الدالة double.tryParse() للتحقق من إمكانية التحويل دون ظهور خطأ.

تحويل عدد صحيح إلى سلسلة نصية

يمكن تحويل عدد صحيح إلى سلسلة نصية في Dart باستخدام الدالة toString().

void main() {
  int number = 123;
  String numberString = number.toString();

  print('Number string: $numberString');
}

في المثال أعلاه، تم استخدام الدالة toString() لتحويل العدد الصحيح 123 إلى السلسلة النصية '123'.

تحويل عدد عشري إلى عدد صحيح

يمكن تحويل عدد عشري إلى عدد صحيح في Dart باستخدام الدالة toInt(). ستقوم هذه الدالة بإزالة الأجزاء العشرية واسترداد القسم الصحيح فقط.

void main() {
  double number = 3.14;
  int integerNumber = number.toInt();

  print('Integer number: $integerNumber');
}

في المثال أعلاه، تم استخدام الدالالدالة toInt() لتحويل العدد العشري 3.14 إلى العدد الصحيح 3.


معلومات هامة عن النصوص String

استخدام اقتباسات العلامات (single quotes و double quotes)

في لغة Dart، يمكن استخدام اقتباسات العلامات الفردية (single quotes) أو العلامات المزدوجة (double quotes) لإنشاء سلاسل نصية. يمكن استخدام أي منهما لتحديد النص داخل السلسلة. على سبيل المثال:

void main() {
  String singleQuotedString = 'Hello, world!';
  String doubleQuotedString = "Hello, world!";

  print(singleQuotedString);
  print(doubleQuotedString);
}

في المثال أعلاه، تم استخدام اقتباسات العلامات الفردية والمزدوجة لإنشاء سلسلتين نصيتين متماثلتين “Hello, world!”.

يمكن استخدام أي نوع من الاقتباسات في السلاسل النصية. إذا كانت السلسلة النصية تحتوي على اقتباسات داخلها، فيمكن استخدام نوع الاقتباس الآخر لتجنب تعارض الاقتباسات.

إنشاء سلسلة نصية متعددة الأسطر

يمكن إنشاء سلاسل نصية متعددة الأسطر في Dart باستخدام اقتباسات العلامات المزدوجة (double quotes) مع استخدام العلامة \n لتمثيل السطر الجديد.

void main() {
  String multiLineString = "Hello, \nworld!";

  print(multiLineString);
}

في المثال أعلاه، تم استخدام سلسلة نصية متعددة الأسطر تحتوي على النص “Hello,” على سطر واحد و “world!” على سطر آخر.

يمكن أيضًا استخدام اقتباسات العلامات الفردية (single quotes) لإنشاء سلاسل نصية متعددة الأسطر.

الأحرف الخاصة في السلاسل النصية

تتيح لغة Dart استخدام الأحرف الخاصة (escape characters) في السلاسل النصية لتمثيل أحرف معينة بشكل خاص. بعض الأحرف الخاصة الشائعة تشمل:

  • \" لتمثيل علامة الاقتباس المزدوجة (double quote) داخل سلسلة نصية محاطة بعلامات الاقتباس المزدوجة.
  • \' لتمثيل علامة الاقتباس الفردية (single quote) داخل سلسلة نصية محاطة بعلامات الاقتباس الفردية.
  • \\ لتمثيل علامة الانقسام (backslash) نفسها داخل السلسلة النصية.
  • \n لتمثيل السطر الجديد (newline).
  • وغيرها من الأحرف الخاصة المستخدمة بشكل شائع.

void main() {
  String escapedString = "This is an example of \"escaped\" string.";

  print(escapedString);
}

في المثال أعلاه، تم استخدام الأحرف الخاصة \" لتمثيل علامة الاقتباس المزدوجة (double quote) داخل سلسلة نصية محاطة بعلامات الاقتباس المزدوجة.

إنشاء سلسلة نصية غير معالجة (Raw String)

في لغة Dart ، يمكن إنشاء سلسلة نصية غير معالجة (Raw String) باستخدام العلامة r قبل بداية السلسلة النصية. تسمح السلاسل النصية غير المعالجة بتجاهل أي أحرف خاصة أو أكواد escape وتعتبر النص كما هو.

void main() {
  String rawString = r'This is a raw string \n with \t special characters.';

  print(rawString);
}

في المثال أعلاه، تم استخدام العلامة r قبل بداية السلسلة النصية لإنشاء سلسلة نصية غير معالجة. يتم عرض السلسلة النصية كما هي دون معالجة الأحرف الخاصة مثل \n و \t.

استخدام السلاسل النصية غير المعالجة يكون مفيدًا عندما تحتاج إلى تمرير سلاسل نصية تحتوي على العديد من الأحرف الخاصة أو الأكواد التي قد تؤدي إلى تغيير سلوك السلسلة النصية المعالجة.


هذه كانت نظرة عامة على أنواع البيانات المدمجة في لغة Dart. يمكنك استخدام هذه الأنواع لتخزين وتعامل مع البيانات في تطبيقاتك. تذكر أن استخدام الأنواع البيانية المناسبة يساعد في تحسين أداء التطبيق وتجنب الأخطاء.

 

Arab Flutter Community 🚀

انضم إلى مجتمع Arab Flutter
شارك هذا المقال
فيسبوك تويتر Whatsapp Whatsapp لينكد ان تلغرام نسخ الرابط
المقال السابق شرح المتغيرات في لغة دارت (Variables in Dart) الدرس 2: شرح المتغيرات في لغة دارت (Variables in Dart)
المقال التالي شرح العوامل في لغة دارت (Operators in Dart) الدرس 4: شرح العوامل في لغة دارت (Operators in Dart)
Avatar of عبدالله يوسف
بواسطة عبدالله يوسف Founder and CEO at ArabFlutter
تابع:
أنا عبدالله يوسف، مهندس مصري ومؤسس موقع عرب فلاتر، ملهم بشغف التكنولوجيا والإبداع. كمصمم مواقع ومبرمج تطبيقات موبايل باستخدام Flutter، أستمتع بخلق عوالم رقمية فريدة ومبتكرة. تتجلى مواهبي في تصميم وتطوير واجهات مستخدم تفاعلية، حيث يمزج الجانب الجمالي بالدقة الهندسية. ما يميزني هو إلمامي الواسع بتقنيات البرمجة والتصميم، ومقدرتي على تطوير تطبيقات متنوعة عبر منصات مختلفة. أعتبر نفسي مبدعًا وملتزمًا، حيث أسعى دائمًا لتحقيق تحسين مستمر في مهاراتي وتقنياتي. أستمتع بتحديات العمل الجماعي وأؤمن بأهمية الابتكار والتطور. بفضل إبداعي والتزامي، أسعى لتقديم حلول فعّالة تلبي توقعات العملاء وتفوق عن المألوف.
اترك تعليقا اترك تعليقا

اترك تعليقاً إلغاء الرد

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *

شرح الـ Event Loop في Flutter وجعل التطبيق لا يتوقف أبدًا
شرح الـ Event Loop في Flutter وجعل التطبيق لا يتوقف أبدًا
Tutorials
حل مشكلة التوافق بين Java و Kotlin و Gradle في فلاتر
حل مشكلة التوافق بين Java و Kotlin و Gradle في فلاتر
Tutorials
أفضل الـ Packages في Flutter لتسريع تطوير التطبيقات
أفضل الـ Packages في Flutter لتسريع تطوير التطبيقات
Tutorials
طريقة انشاء المجلدات باستخدام Dart
طريقة انشاء المجلدات باستخدام كود Dart تلقائيًا
Tutorials

مقالات ذات الصلة

اطلع على المزيد من المقالات المتعلقة بهذا الموضوع!
شرح العوازل في لغة دارت (Isolates in Dart)
Dart

شرح العوازل في لغة دارت (Isolates in Dart)

8
شرح الـ Stream في لغة دارت (Stream in Dart)
Dart

الدرس 57: شرح الـ Stream في لغة دارت (Stream in Dart)

8
شرح عبارات async & await في لغة دارت (Dart)
Dart

الدرس 56: شرح عبارات async & await في لغة دارت (Dart)

6
شرح مفهوم الـ Future في لغة دارت (Future In Dart)
Dart

الدرس 55: شرح مفهوم الـ Future في لغة دارت (Future In Dart)

6
شرح مفهوم الـ Asynchronous في لغة دارت (Dart)
Dart

الدرس 54: شرح مفهوم الـ Asynchronous في لغة دارت (Dart)

5
10 تمارين محلولة على Null Safety في لغة دارت Dart
Dart

الدرس 53: 10 تمارين محلولة على Null Safety في لغة دارت Dart

5
أظهر المزيد
شعار موقع عرب فلاتر شعار موقع عرب فلاتر

About US

Quick Links

  • خدماتنا
  • من نحن
  • اتصل بنا
  • اتفاقية استخدام
  • سياسة الخصوصية
© جميع الحقوق محفوظة موقع عرب فلاتر 2023
  • Dart
  • Widgets
  • Packages
  • Tutorials
  • Flutter Roadmap
  • تثبيت Dart
  • تثبيت Flutter
adbanner
تم اكتشاف مانع إعلانات
مرحبًا، يرجى إيقاف مانع الإعلانات. الإعلانات تُساهم في دعم موقعنا وتغطية جزء من تكاليف الاستضافة وتطوير المحتوى. شكرًا لتفهمك ودعمك.
Okay, I'll Whitelist
Welcome Back!

Sign in to your account

هل نسيت كلمة المرور؟