أنواع بيانات جافا
أنواع بيانات جافا
كما هو موضح في الفصل السابق ، يجب أن يكون المتغير في Java من نوع بيانات محدد:
مثال
int myNum = 5; // Integer (whole number)
float myFloatNum = 5.99f; // Floating point number
char myLetter = 'D'; // Character
boolean myBool = true; // Boolean
String myText = "Hello"; // String
تنقسم أنواع البيانات إلى مجموعتين:
- أنواع البيانات الأولية - تتضمن
byte
وshort
وint
وlong
وfloat
وdouble
boolean
char
- أنواع البيانات غير البدائية - مثل String و Arrays و Classes (سوف تتعلم المزيد عن هذه الأنواع في فصل لاحق)
أنواع البيانات البدائية
يحدد نوع البيانات الأولية حجم ونوع القيم المتغيرة ، وليس له طرق إضافية.
هناك ثمانية أنواع من البيانات البدائية في Java:
Data Type | Size | Description |
---|---|---|
byte | 1 byte | Stores whole numbers from -128 to 127 |
short | 2 bytes | Stores whole numbers from -32,768 to 32,767 |
int | 4 bytes | Stores whole numbers from -2,147,483,648 to 2,147,483,647 |
long | 8 bytes | Stores whole numbers from -9,223,372,036,854,775,808 to 9,223,372,036,854,775,807 |
float | 4 bytes | Stores fractional numbers. Sufficient for storing 6 to 7 decimal digits |
double | 8 bytes | Stores fractional numbers. Sufficient for storing 15 decimal digits |
boolean | 1 bit | Stores true or false values |
char | 2 bytes | Stores a single character/letter or ASCII values |
أعداد
تنقسم أنواع الأعداد البدائية إلى مجموعتين:
أنواع الأعداد الصحيحة تخزن الأعداد الصحيحة ، موجبة أو سالبة (مثل 123 أو -456) ، بدون كسور عشرية. الأنواع الصالحة هي byte
و short
و int
و long
. أي نوع يجب أن تستخدمه ، يعتمد على القيمة الرقمية.
تمثل أنواع الفاصلة العائمة الأرقام التي تحتوي على جزء كسري ، وتحتوي على واحد أو أكثر من الكسور العشرية. هناك نوعان: float
و double
.
على الرغم من وجود العديد من الأنواع الرقمية في Java ، فإن الأكثر استخدامًا للأرقام هي int
(للأرقام الصحيحة) و double
(لأرقام الفاصلة العائمة). ومع ذلك ، سوف نصفهم جميعًا بينما تستمر في القراءة.
أنواع عدد صحيح
بايت
يمكن byte
لنوع البيانات تخزين الأعداد الصحيحة من -128 إلى 127. ويمكن استخدام هذا بدلاً من int
أو أنواع الأعداد الصحيحة الأخرى لحفظ الذاكرة عندما تكون متأكدًا من أن القيمة ستكون ضمن -128 و 127:
مثال
byte myNum = 100;
System.out.println(myNum);
قصيرة
يمكن short
لنوع البيانات تخزين الأعداد الصحيحة من -32768 إلى 32767:
مثال
short myNum = 5000;
System.out.println(myNum);
كثافة العمليات
يمكن int
لنوع البيانات تخزين الأعداد الصحيحة من -2147483648 إلى 2147483647. بشكل عام ، وفي برنامجنا التعليمي ، يكون int
نوع البيانات هو نوع البيانات المفضل عند إنشاء متغيرات بقيمة رقمية.
مثال
int myNum = 100000;
System.out.println(myNum);
طويل
يمكن long
لنوع البيانات تخزين الأعداد الصحيحة من -9223372036854775808 إلى 9223372036854775807. يتم استخدام هذا عندما لا تكون int كبيرة بما يكفي لتخزين القيمة. لاحظ أنه يجب إنهاء القيمة بـ "L":
مثال
long myNum = 15000000000L;
System.out.println(myNum);
أنواع النقطة العائمة
يجب عليك استخدام نوع الفاصلة العائمة متى احتجت إلى رقم به علامة عشرية ، مثل 9.99 أو 3.14515.
تطفو
يمكن float
لنوع البيانات تخزين الأرقام الكسرية من 3.4e − 038 إلى 3.4e + 038. لاحظ أنه يجب إنهاء القيمة بـ "f":
مثال
float myNum = 5.75f;
System.out.println(myNum);
مزدوج
يمكن double
لنوع البيانات تخزين الأرقام الكسرية من 1.7e − 308 إلى 1.7e + 308. لاحظ أنه يجب إنهاء القيمة بـ "d":
مثال
double myNum = 19.99d;
System.out.println(myNum);
استخدم float
أو double
؟
تشير دقة قيمة الفاصلة العائمة إلى عدد الأرقام التي يمكن أن تحتويها القيمة بعد الفاصلة العشرية. تبلغ الدقة float
ستة أو سبعة أرقام عشرية فقط ، بينما double
تبلغ دقة المتغيرات حوالي 15 رقمًا. لذلك ، يعد استخدامها أكثر أمانًا في double
معظم العمليات الحسابية.
الأعداد العلمية
يمكن أن يكون رقم الفاصلة العائمة أيضًا رقمًا علميًا بحرف "e" للإشارة إلى قوة 10:
مثال
float f1 = 35e3f;
double d1 = 12E4d;
System.out.println(f1);
System.out.println(d1);
قيمة منطقية
يتم التصريح عن نوع البيانات المنطقية boolean
بالكلمة الأساسية ويمكن فقط أخذ القيم true
أو false
:
مثال
boolean isJavaFun = true;
boolean isFishTasty = false;
System.out.println(isJavaFun); // Outputs true
System.out.println(isFishTasty); // Outputs false
تُستخدم القيم المنطقية في الغالب للاختبار الشرطي ، والتي ستتعلم المزيد عنها في فصل لاحق.
الشخصيات
يتم char
استخدام نوع البيانات لتخزين
حرف واحد . يجب أن يكون الحرف محاطًا بعلامات اقتباس فردية ، مثل "أ" أو "ج":
مثال
char myGrade = 'B';
System.out.println(myGrade);
بدلاً من ذلك ، يمكنك استخدام قيم ASCII لعرض أحرف معينة:
مثال
char myVar1 = 65, myVar2 = 66, myVar3 = 67;
System.out.println(myVar1);
System.out.println(myVar2);
System.out.println(myVar3);
نصيحة: يمكن العثور على قائمة بجميع قيم ASCII في مرجع جدول ASCII الخاص بنا .
سلاسل
يتم String
استخدام نوع البيانات لتخزين سلسلة من الأحرف (نص). يجب أن تُحاط قيم السلسلة بعلامات اقتباس مزدوجة:
مثال
String greeting = "Hello World";
System.out.println(greeting);
يتم استخدام نوع String بشكل كبير ومتكامل في Java ، لدرجة أن البعض يسميه " النوع التاسع الخاص ".
سلسلة في Java هي في الواقع نوع بيانات غير بدائي ، لأنها تشير إلى كائن. يحتوي كائن String على طرق يتم استخدامها لإجراء عمليات معينة على السلاسل. لا تقلق إذا لم تفهم مصطلح "كائن" الآن . سنتعلم المزيد عن الأوتار والأشياء في فصل لاحق.
أنواع البيانات غير البدائية
تسمى أنواع البيانات غير البدائية أنواع المراجع لأنها تشير إلى كائنات.
الفرق الرئيسي بين أنواع البيانات البدائية وغير البدائية هو:
- الأنواع الأولية محددة مسبقًا (محددة بالفعل) في Java. يتم إنشاء الأنواع غير البدائية بواسطة المبرمج ولا يتم تعريفها بواسطة Java (باستثناء
String
). - يمكن استخدام الأنواع غير البدائية لاستدعاء طرق لإجراء عمليات معينة ، بينما لا يمكن استخدام الأنواع الأولية.
- النوع البدائي له دائمًا قيمة ، بينما الأنواع غير البدائية يمكن أن تكون كذلك
null
. - يبدأ النوع البدائي بحرف صغير ، بينما يبدأ النوع غير البدائي بحرف كبير.
- يعتمد حجم النوع الأولي على نوع البيانات ، في حين أن الأنواع غير الأولية لها نفس الحجم.
من أمثلة الأنواع غير البدائية سلاسل ، ومصفوفات ، وفئات ، وواجهة ، وما إلى ذلك. وسوف تتعلم المزيد عن هذه الأنواع في فصل لاحق.