تفاوت انواع داده ای Double, Float, Decimal چیست؟

تفاوت انواع داده ای Double, Float, Decimal چیست؟

در حقیقت میزان دقت ذخیره سازی تفاوت اصلی این نوع داده های می باشد، متغییر های float  یک نوع داده اعشاری 23 بیت می باشد، double دو برابر یک متغییر float یعنی 64 بیت و متغییر decimal یک نوع  128 بیتی می باشد.

 

در زبان برنامه نویسی انواع مختلفی داده برای ایجاد متغییر ها بسته به نیاز خود داریم، که می توان انواع متنی، عددی یا boolean و.. باشد.

داده های Decimal، Double، و Float از نوع داده هایی می باشند که مقادیر عدد اعشاری را در خود ذخیره می کنند با این حال هر کدام از سه نوع داده ذکر شده با همدیگر تفاوت هایی دارند.

تفاوت متغییر های Decimal، Double، و Float در نحوه ذخیره سازی مقادیر می باشد. 

در حقیقت میزان دقت ذخیره سازی تفاوت اصلی این نوع داده های می باشد، متغییر های float  یک نوع داده اعشاری 23 بیت می باشد، double دو برابر یک متغییر float یعنی 64 بیت و متغییر decimal یک نوع  128 بیتی می باشد.

به عبارت دیگر :

Float - 32 bit (7 digits)

Double - 64 bit (15-16 digits)

Decimal - 128 bit (28-29 significant digits)

 

 

تفاوت اصلی این سه نوع داده در این است که انواع داده Float و Double از نوع شناور دوتایی (باینری) می باشند اما نوع داده Decimal مقدار را به عنوان یک نوع اعشاری شناور ذخیره می کند.

بنابراین نوع Decimal دقت بیشتری دارند و معمولا در برنامه های پولی(مالی) مورد استفاده قرار می گیرند.

اگر شما قصد ایجاد یک برنامه مالی دارید پس بهتر است در قسمت هایی که با مقادیر مالی بصورت مستقیم سروکار دارید از نوع Decimal برای ذخیره سازی استفاده نمایید. در کارایی نیز انواع Decimal از دو نوع دیگر سبک تر می باشند.

بصورت کلی موارد استفاده سه نوع Float, Double و Decimal بصورت زیر می باشد.

Decimal: در هنگام ایجاد برنامه های مالی بهتر است از این نوع داده که سطح بالایی از دقت در دخیره سازی را به ما می دهد استفاده کنید.

 

Double: این نوع داده می تواند برای مواد مختلف به جز مواد مالی مورد استفاده قرار بگیرد.

Float: این نوع از داده نیز می تواند در بخش هایی که خطای گرد کردن زیاد مهم نباشد مورد استفاده قرار گیرد.

 

 

خوشحال می شیم اگر شما هم چیزی می دونید که به بهتر شدن این مطلب کمک می کنه از بخش نظرات برای ما ارسال کنید.


ارسال نظر

برای اطلاع از پاسخ به نظر شما می توانید ایمیل یا شماره موبایل خود را وارد نمایید. *

ایمیل و شماره موبایل شما کاملا مخفی خواهد ماند و در سایت نمایش داده نخواهد شد. *

اگر نظری برای این مطلب ارسال شد از طریق ایمیل مرا اطلاع بده!
لسیت نظرات
مجتبی ذوالفقاری
متن رو بخونید بجای 32 بیت نوشتین 23 بیت

پاسخ به این نظر