تفاوت کلیدی – عدد صحیح در مقابل شناور
Float و Double کلاسهای wrapper دیگری هستند که برای تبدیل انواع دادههای اولیه استفاده میشوند. گاهی اوقات نیاز به تبدیل نوع داده اولیه به یک شی و تبدیل شی به نوع داده اولیه است. برای آن می توان از کلاس های Wrapper استفاده کرد. زبان های برنامه نویسی مانند جاوا دارای کلاس های Wrapper هستند. آنها برای این فرآیند تبدیل استفاده می شوند. کلاس wrapper کلاسی است که انواع را کپسوله می کند. از این انواع می توان برای ایجاد نمونه های شی و متدها در کلاس دیگری که به آن انواع نیاز دارد استفاده کرد. هشت نوع اولیه در جاوا وجود دارد. آنها int، short، byte، long، boolean، char، float و double هستند.کلاس wrapper مربوطه برای نوع داده بولی Boolean است. کلاس wrapper برای نوع داده char یک کاراکتر است. Short، Byte، Integer، Long، Float و Double دیگر کلاس های wrapper هستند. تبدیل نوع داده اولیه به یک شی به طور خودکار، جعبه خودکار نامیده می شود. تبدیل شی به یک نوع اولیه به صورت خودکار جعبه گشایی نامیده می شود. در این مقاله دو کلاس wrapper که Integer و Float هستند مورد بحث قرار می گیرد. تفاوت اصلی بین Integer و Float این است که Integer کلاس wrapper مربوط به نوع داده اولیه int است در حالی که Float کلاس wrapper مربوط به نوع داده اولیه float است.
عدد صحیح چیست؟
Integer یک کلاس wrapper در جاوا است. نوع داده مربوطه int است. برای تبدیل یک نوع داده int به یک شی یا برای تبدیل یک شی به یک int استفاده می شود. به مثال زیر با کلاس بسته بندی عدد صحیح مراجعه کنید.
شکل 01: برنامه با کلاس Wrapper عدد صحیح
طبق برنامه فوق، x یک متغیر از نوع int است. این شامل مقدار 10 است. Integer.valueOf برای تبدیل شیء نوع int به عدد صحیح استفاده می شود. متغیر x به مقدار متد ارسال می شود. به همین ترتیب، int به یک عدد صحیح تبدیل می شود.
y یک شی از نوع Integer است. مقدار 5 به سازنده ارسال می شود. با استفاده از متد intValue، آن شی به نوع داده int تبدیل می شود. این مقدار تبدیل شده در متغیر z ذخیره می شود که می تواند یک int را نگه دارد.
شکل 02: Autoboxing و Unboxing مثال1
طبق برنامه فوق، متغیر x دارای یک int است. هنگام تخصیص آن به Integer، کامپایلر به طور خودکار Integer را می نویسد.valueOf(x) در داخل. این همان بوکس خودکار است. "a" از نوع Integer است. مقدار 6 به سازنده ارسال می شود. هنگام اختصاص دادن مقدار a به b، کامپایلر به طور خودکار a.intValue() را در داخل می نویسد. این جعبه گشایی است.
Float چیست؟
Float یک کلاس wrapper در جاوا است. نوع داده مربوطه یک شناور است. برای تبدیل یک نوع داده شناور به یک شی یا برای تبدیل یک شی به یک شناور استفاده می شود. به مثال زیر با کلاس شناور wrapper مراجعه کنید.
شکل 03: برنامه با کلاس Float Wrapper
طبق برنامه فوق، x یک متغیر از نوع float است. حاوی مقدار 20.5f است. Float.valueOf برای تبدیل float به آبجکت نوع Float استفاده می شود. متغیر x به متد valueOf ارسال می شود. به همین ترتیب، شناور به یک شناور تبدیل می شود.
Y یک شی از نوع Float است. مقدار 10.5f به سازنده منتقل می شود. با استفاده از متد floatValue، آن شی به نوع داده float تبدیل می شود. این مقدار تبدیل شده در متغیر z ذخیره می شود که می تواند مقدار شناور را نگه دارد.
شکل 04: Autoboxing و Unboxing مثال2
طبق برنامه فوق، متغیر x دارای یک شناور است. هنگام اختصاص دادن آن به Float، کامپایلر به طور خودکار Float.valueOf(x) را در داخل می نویسد. یعنی اتوباکسینگ "a" از نوع Float است. مقدار 6.1f به سازنده منتقل می شود. هنگام اختصاص دادن مقدار a به b، کامپایلر به طور خودکار a.floatValue() را در داخل می نویسد. این جعبه گشایی است.
شباهت بین عدد صحیح و شناور چیست؟
هر دو Integer و Float کلاسهای wrapper در جاوا هستند
تفاوت بین عدد صحیح و شناور چیست؟
Integer در مقابل Float |
|
Integer کلاسی است که مقداری از نوع اولیه int را در یک شی می پیچد. | Float کلاسی است که مقداری از نوع اولیه float را در یک شی می پیچد. |
نوع داده اولیه مرتبط | |
Integer کلاس wrapper مربوط به نوع داده int است. | Float کلاس پوشش مربوط به نوع داده float است. |
خلاصه - عدد صحیح در مقابل شناور
هشت نوع اصلی اولیه در جاوا وجود دارد. آنها int، short، byte، long، boolean، char، float و double هستند. گاهی اوقات لازم است انواع داده های اولیه به شی و شی به انواع اولیه تبدیل شوند.کلاس های Wrapper برای آن استفاده می شود. هر نوع اولیه دارای یک کلاس wrapper مربوطه است. این کلاس های wrapper عبارتند از Integer، Short، Byte، Long، Boolean، Char، Float و Double. این مقاله تفاوت بین Integer و Float را مورد بحث قرار داد. تفاوت بین Integer و Float در این است که Integer کلاس wrapper مربوط به نوع داده اولیه int است در حالی که Float کلاس wrapper مربوط به نوع داده اولیه float است.