موصى به, 2024

اختيار المحرر

الفرق بين الباحث وطويل

أنواع البيانات int و long هي بين نوعي البيانات الصحيحتين الموصوفين في Java. في Java ، يتم تسجيل أنواع int و long ، + ve وقيم -ve. لا يدعم Java الأنواع غير المقيمة و الطويلة. الفرق الأساسي بين نوع البيانات int و long هو عرض كل نوع. يحتوي int نوع البيانات على عرض 32 بت للمتغير نوع int. من ناحية أخرى ، يحتوي نوع البيانات طويلًا على عرض 64 بت للمتغير من النوع الطويل. يوضح مخطط المقارنة أدناه بعض الاختلافات الأخرى بين int و long.

رسم بياني للمقارنة

أساس للمقارنةالباحثطويل
الأساسيةنوع البيانات int هو 32 بت.نوع البيانات طويل من 64 بت.
بايتإذا تم عدها بالبايت ، يكون int 4 بايت.إذا تم حسابها بالبايت ، يكون الطول 8 بايت.
نطاقفي Java ، يكون نطاق int هو -2،147،483،648 إلى 2،147،483،647.في جافا ، يكون نطاق النوع طويلًا
9،223،372،036،854،775،808 إلى 9،223،372،036،854،775،807.
الكلمةالكلمة الرئيسية المستخدمة لإعلان متغير نوع int هي "int".الكلمة الرئيسية المستخدمة في تعريف متغير من النوع الطويل هي "طويلة".
ذاكرةالذاكرة المطلوبة لتخزين متغير int هي أقل مقارنة بالطول.الذاكرة المطلوبة لتخزين متغير طويل أكبر بالمقارنة مع int.

تعريف نوع int

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

 بايت أ = 70؛ بايت b = 80 ؛ int c = a * b؛ // لا يوجد خطأ. بايت d = a + 10؛ // خطأ وقت الترجمة. 

كما يمكنك الملاحظة في الكود أعلاه ، فإن المتغيرين البايتين (أ) و (ب) يحتويان على القيمة 70 و 80 ، وهي قيمة صالحة بين البايتات. لكن النتيجة الوسيطة لـ * b؛ يتجاوز الحد من البايت. وبالتالي ، يقوم المترجم أوتوماتيكياً بالترويج للمتغيرات البايتة القصيرة والقريبة لكتابة int ، إذا كانت مستخدمة في تعبير. الآن ، يمكنك أن ترى أن ناتج a * b يتم تعيينه لمتغير int لا يسبب أي خطأ ويتم تجميعه بسلاسة لأن المتغيرين a و b يتم ترقيتهما إلى int int وتعيين نوع int إلى int int int ' ر تسبب الخطأ.

في السطر الأخير من التعليمات البرمجية ، يمكنك مشاهدة تعبير ، حيث يتم إضافة القيمة 10 إلى متغير بايت 'a' لا تزال نتاجها لا يتجاوز الحد الأقصى للبايت. ولكن ، يؤدي تعيين النتيجة الوسيطة للتعبير "a + 10" إلى متغير البايت "d" ، إلى حدوث خطأ في وقت التحويل البرمجي لأنه بينما يتم ترقية متغير بايت تقييم التعبير 'a' إلى النوع int. ولا يُسمح بالتعيين من النوع int لكتابة البايت. وبالتالي ، فإنه يؤدي إلى خطأ وقت الترجمة.

تعريف النوع الطويل

يحتوي نوع البيانات طويلًا على أكبر نطاق وعرض بالمقارنة مع أنواع البايت ، والقصير ، والمختلط. في Java ، النوع الطويل هو نوع صحيح 64 بت موقّع. يتم استخدام النوع long حيث أن النوع int ليس كبيرًا للاحتفاظ بالقيمة المطلوبة. المدى الطويل هو -9،223،372،036،854،775،808 إلى 9،223،372،036،854،775،807 وهو كبير جداً ، للحفاظ على القيم الأكبر مثل الأعداد الكبيرة. يمكننا أن نفهم النوع لفترة طويلة مع مثال أدناه.

 وزن الطبقة {public static void main (String args []) {int item؛ int wt_per_item غرام طويل صندوق طويل البند = 10000000 ؛ // تحديد عدد العناصر wt_per_item = 10000؛ // تحديد وزن عنصر واحد بالكيلو غرام = wt_item * 1000 ؛ // convert weight to gram Box = item * gram؛ // حساب وزن المربع بالغرام System.out.println ("Number of item" + item)؛ System.out.println ("الوزن لكل عنصر" + wt_per_item + "kilos") ؛ System.out.println ("وزن المربع بالجرام" + مربع + "kilos") ؛ }} عدد القطع 10000000 الوزن لكل صنف 10000 كيلوغرام وزن الصندوق بالجرام 1000000000000 كلغ 

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

الاختلافات الرئيسية بين كثافة العمليات وطويلة

  1. والفرق الأساسي بين النوع int و long هو عرضها حيث int هي 32 bit و long 64 بت.
  2. تكون الأنواع int و long عند حسابها بالبايت بدلاً من bits int int 4 بايت و النوع الطويل هو مرتين فقط إذا كانت type int ie 8 bytes.
  3. في Java ، يتراوح نطاق int من -2،147،483،648 إلى 2،147،483،647 بينما يتراوح طول النوع من -9،223،372،036،854،775،808 إلى 9،223،372،036،854،775،807 وهو أكبر بكثير من النوع int.
  4. الكلمة الأساسية المستخدمة في إعلان متغير من النوع int هي "int". من ناحية أخرى ، الكلمة المفتاحية لتعريف المتغير من النوع طويلة هي "طويلة".
  5. بشكل عام ، تكون الذاكرة المطلوبة للاحتفاظ بقيمة نوع int أقل مقارنة بالطول.

استنتاج:

أثناء كتابة التعليمات البرمجية إذا كانت هناك حاجة لقيمة متوسطة ، فيمكنك استخدام النوع int ولكن عندما يكون الناتج الناتج بأي تعبير أكبر ، أو يتم استخدام القيم الأكبر للحساب ، فيجب استخدام متغير الكتابة الطويل للاحتفاظ القيم.

Top