/ / برمجة: جافا. أنواع البيانات

برمجة: جافا. أنواع البيانات

يتم تعريف نوع البيانات من خلال ثلاثة مكونات:

  • مجموعة من القيم أو الكائنات ؛
  • مجموعة من العمليات التي يمكن تطبيقها على جميع القيم في المجموعة ؛
  • عرض البيانات التي تحدد تخزينها.

ما هي أنواع البيانات في جاوة؟

تحتوي لغة البرمجة على بعض الأنواع المضمنة مسبقًا وتسمح للمبرمجين بتعريف أنواعهم الخاصة والمعروفة.

في Java ، يتم تقسيم أنواع البيانات إلى أنواع مرجعية وبدائية.

"بدائي" يعني أنه أبعد من ذلكالتقسيم مستحيل. توسيع أو تغيير لغة البرمجة لا يسمح. يتم وصف هذا النوع من البيانات بواسطة الأنواع الأولية والمعرّفة من قِبل المستخدم.

يحتوي متغير من النوع الأساسي على قيمة ، ويحتوي متغير مرجع على عنوان الكائن في الذاكرة.

أنواع البيانات جافا

لغة جافا. أنواع البيانات: الوقت والتاريخ

تنقسم البيانات المركبة إلى فئات وواجهات ومصفوفات. أعضاء نوع الواجهة هي أساليب مجردة وثوابت. في Java ، يتم تحديد أنواع بيانات التاريخ والوقت بواسطة مُنشئ التاريخ ():

  • د = تاريخ جديد ().

مثال على الارتباط هو أيضا سلسلة.

لغة جافا. أنواع البيانات: سلسلة

السلسلة عبارة عن فئة محددة في مكتبة Java ، ويمكن استخدامها للعمل مع النص (تسلسل حروف).

يكون تعريف متغير سلسلة المرجع كما يلي: String str.

قبل تعيين مرجع كائن مثل متغير، يجب عليك إنشاء باستخدام المشغل الجديد. على سبيل المثال، قد تقوم بإنشاء كائن سلسلة مع النص "مرحبا":

  • str = new String ("Hello").

ماذا يحدث عند تنفيذ هذا الرمز؟أولاً ، يتم تخصيص الذاكرة ، ويرتبط اسم str بخلية الذاكرة هذه. هذا لا يختلف عن التصريح بمتغير بدائي. ينشئ جزء التعليمات البرمجية الثاني كائن سلسلة بنص "Hi" في الذاكرة ويقوم بتخزين مرجع إليه (أو عنوان الذاكرة) في str.

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

  • string str1؛
  • سلسلة str2
  • str1 = سلسلة جديدة ("Hello") ؛
  • str2 = str1 ؛

يوجد مرجع فارغ دائم ، والذي يمكن تخصيصه لأي متغير مرجع. لا يشير إلى أي كائن.

يتم إنشاء كائن السلسلة باستخدام المشغل الجديد.ولكن نظرًا لأن السلاسل تُستخدم كثيرًا ، فهناك طريقة أسهل لإنشائها. يتم التعامل مع جميع القيم الحرفية للسلسلة ، أي سلسلة من الأحرف الموضحة في علامات اقتباس مزدوجة ، ككائنات سلسلة. لذلك ، بدلاً من المشغل الجديد ، يمكنك استخدام القيم الحرفية للسلسلة:

  • string str1 = "Hello".

أنواع البيانات البدائية Java - بايت و short و int وطويلة ، شار ، تعويم ، مزدوجة ، منطقية. تقع في فئتين: منطقية وعددية. يمكن تقسيم هذا الأخير إلى أرقام صحيحة وأرقام عائمة.

أنواع بيانات Java بالكامل هي أنواع رقمية تكون قيمها أعداد صحيحة. هناك خمسة منهم: البايت ، قصيرة ، كثافة العمليات ، طويلة وشار.

أنواع البيانات جافا

كثافة العمليات

Int هو نوع بيانات بدائي 32 بت موقعة. يأخذ المتغير 32 بت من الذاكرة. النطاق المسموح به من -2147483648 إلى 2147483647 (-231 ما يصل إلى 231 - 1). كل الأعداد الصحيحة في هذا النطاق هي حرفية أو ثوابت صحيحة. على سبيل المثال ، 10 ، -200 ، 0 ، 30 ، 19 حرفان int. يمكن تعيينها إلى int:

  • int num1 = 21 ؛

يمكن التعبير عن القيم الحرفية الكاملة على شكل ثنائي ، ثماني ، وعشري ، وستعشري.

عندما يبدأ حرف حرفي بصفر ولديه رقمين على الأقل ، يتم اعتباره مكتوبًا بتنسيق ثماني. تمثل 0 و 00 القيمة نفسها - صفر.

جميع القيم الحرفية int بالتنسيق الست عشري تبدأ بـ 0x أو 0x ، ويجب أن تحتوي على رقم سداسي عشري واحد على الأقل:

  • int num1 = 0x123.

تبدأ Int-literals في تنسيق ثنائي 0b أو 0B:

  • int num1 = 0b10101.

جافا أنواع البيانات الوقت

طويل

هذا هو نوع 64 بت مبدئي. تُستخدم عندما تتجاوز نتيجة الحساب نطاق int. مجموعة طويلة - من -263 ما يصل إلى 263- 1. جميع الأعداد الصحيحة في هذا النطاق هي حرفية طويلة.

للتمييز بين int وبيانات طويلة في Java ، ينتهي الحرف الحرفي للنوع الأخير دائمًا بـ L أو l.

يمكن التعبير الحرفي طويل المدى أيضًا بالتنسيقات الثمانية والسداسي عشري والصيغة الثنائية.

عندما يتم تعيين حرفية طويلة لطول متغير ،يتحقق برنامج التحويل البرمجي لـ Java من القيمة التي تم تعيينها ويتحقق من وجودها في نطاق مقبول. خلاف ذلك ، يحدث خطأ ترجمة.

نظرًا لأن نطاق int هو أقل من المدى الطويل ،يمكن دائمًا تعيين قيمة متغير int لمتغير من النوع الطويل. لكن التعيين العكسي غير ممكن حتى داخل نطاق int. لهذا ، يتم استخدام إشارة صريحة:

  • num1 = (int) num2؛

سلسلة أنواع البيانات جافا

بايت

البايت هو نوع بدائي صحيح 8 بت. نطاقها من -128 إلى 127 (-27 ما يصل إلى 27 - 1). هذا هو أصغر نوع صحيح متاح في Java.عادة ، يتم استخدام متغيرات البايت عندما يستخدم البرنامج العديد من القيم في النطاق من -128 إلى 127 ، أو عند العمل مع البيانات الثنائية. على عكس القيم الحرفية الطويلة والحرفية ، لا توجد أي معادن حرفية. ومع ذلك ، يمكنك تعيين أي int-literal إلى متغير بايت لأنه يتجاوز نطاق البايت.

إذا كانت قيمة المتغير خارج النطاق ، فسوف ينتج Java خطأ في المحول البرمجي.

بالإضافة إلى ذلك ، يمكنك تعيين قيمة int-literal فقط ، لكن ليس قيمة مخزنة في المتغير int ، نظرًا لأنها قد تفقد الدقة. هذا يتطلب صب واضح.

  • b1 = (بايت) num1.

باختصار

وهو نوع بيانات أولية كاملة موقعة 16 بت. نطاقها من -32768 إلى 32767 (أو -215 ما يصل إلى 215 - 1).

كقاعدة عامة ، فإن الحاجة إلى متغيرات قصيرةيحدث عندما يستخدم البرنامج عددًا كبيرًا من القيم التي لا تتجاوز النطاق المحدد. حرف حرفي مفقود ، ولكن من الممكن تعيين أي معطيات حرفية داخل النطاق القصير. يمكن دائمًا تعيين قيمة متغير بايت. القواعد المتبقية لتعيين int أو طويلة short-variable هي نفسها كما في البايت.

أنواع البيانات البدائية جافا

فحم

Char هو غير موقعة 16 بتنوع بيانات بدائي يمثل حرف Unicode. غياب علامة يعني أن المتغير لا يمكن أن يكون له قيمة سالبة. النطاق من 0 إلى 65535 ، وهو نفس مجموعة أحرف Unicode. تمثل الحرفية قيمة char ويمكن التعبير عنها في مثل هذه الأشكال:

  • حرف محاط بعلامات اقتباس مفردة؛
  • تسلسل من أحرف التحكم.
  • تسلسل أحرف تحكم Unicode؛
  • تسلسل من أحرف التحكم الثماني.

يمكن التعبير عن الرمز بإبرامهواحد اقتباس: char C1 = "A". تشير علامات الاقتباس المزدوجة إلى سلسلة حرفية لا يمكن تعيينها لمتغير char ، حتى إذا كانت السلسلة تتكون من حرف واحد فقط. هذا أمر غير مقبول ، لأن الإشارة إلى متغير بدائي لم يتم تعيينها. جميع القيم الحرفية للسلسلة هي كائنات من الفئة String ، وبالتالي ، المراجع ، في حين تشير القيم الحرفية للشخصية إلى النوع البدائي.

حرفية أعرب تحكم تسلسل، يتم تسجيل كرمز مائل في علامات الاقتباس المفردة. ما مجموعه 8: 'ن'، 'ص'، 'و'، 'ب'، 'ر'، '\'، ' "'، '' '.

تسلسل التحكم unicode يحتوي على النموذج"uxxxx" ، حيث يشير u (الخط المائل العكسي متبوعاً بالحرف الصغير u) إلى البداية ، ويمثل xxxx أربعة أرقام سداسية عشرية من رمز الحرف في نظام Unicode. على سبيل المثال ، يحتوي "A" على قيمة 65 في النظام العشري و 41 بالنظام الست عشري. وبالتالي ، يمكن تمثيل هذا الرمز باسم "u0041".

تتم كتابة تسلسل التحكم الثماني باسم "nnn" ، حيث n هو رقم ثماني (0-7). نطاق القيم من "8 يتوافق مع 25510. لذلك ، يتم استخدامه لتمثيلأحرف مع رمز من 0 إلى 255 ، وهو ضروري للتوافق مع لغات البرمجة الأخرى. بخلاف تسلسل Unicode حيث تكون الأرقام الستة عشرية مطلوبة ، يمكنك استخدام 1 أو 2 أو 3 أرقام ثمانية: "n" أو "nn" أو "nnn".

أنواع البيانات المرجعية جافا

اكتب منطقي

يحتوي Boolean على قيمتين صالحتين فقط:صحيح وكاذب. ما يطلق عليه boolean حرفية. لا يمكن تحويل المتغير المنطقي إلى نوع آخر والعكس صحيح. جافا لا تحدد حجم منطقي - يعتمد ذلك على التنفيذ المحدد لجهاز Java الظاهري.

جافا العائمة أنواع نقطة

الرقم الذي يحتوي على الجزء الكسري في الذاكرةيمكن تخزين الكمبيوتر في طريقة عرض مع عدد محدد من الأرقام قبل وبعد النقطة أو الإشارة إلى موضعها. وبما أن عدد الأرقام يمكن أن يختلف ، يقال أن النقطة "تطفو".

في لغة Java ، تستخدم أنواع البيانات العائمة 32 بت. وفقًا لمعيار IEEE 754 ، يتوافق هذا مع دقة واحدة ، والتي تسمح ، على سبيل المثال ، بتمثيل الأرقام 1.4 × 10-45 و 3.4 × 1038، سواء كانت إيجابية أو سلبية.

جميع الأرقام الحقيقية التي تنتهي في f أو F تسمى float-literals. يمكن تقديمها بتنسيق الأرقام العشري وعلى شكل تدوين علمي. على سبيل المثال:

  • float f1 = 3.25F؛
  • float f2 = 32.5E-1F؛
  • float f3 = 0.325E + 1F.

يحدد النوع صفرين: + 0.0F (أو 0.0F) و -0.0 F.ومع ذلك ، لأغراض المقارنة ، يتم اعتبار كل من الأصفار متساوية. بالإضافة إلى ذلك ، حدد نوعين من اللانهاية: إيجابي وسالب. لا يتم تعريف نتائج بعض العمليات (على سبيل المثال ، تقسيم 0.0F إلى 0.0F) ويتم تمثيلها بقيمة خاصة من NaN.

أنواع البيانات جافا التاريخ والوقت

دقة مزدوجة

لتخزين أرقام النقطة العائمة ، يستخدم مزدوج 64 بت. يمكن أن يمثل رقم الدقة المزدوجة القيم الإيجابية والسلبية 4.9 × 10-324 و 1.7 × 10308.

كل الأرقام الحقيقية الافتراضية هيالحرفيين مزدوجة. بشكل اختياري ، يمكن الإشارة إليها صراحةً باللاحقة d أو D ، على سبيل المثال ، 19.27d. يمكن التعبير عن حرفيتين مزدوجتين في الشكل العشري وفي التدوين العلمي.

يحب:
0
الوظائف الشعبية
التطور الروحي
طعام
ذ