Asosiy farq – int va long
Dasturlashda ma'lumotlarni saqlash talab qilinadi. Ma'lumotlar xotirada saqlanadi. Ma'lumotlarni saqlashi mumkin bo'lgan xotira joylari o'zgaruvchilar deb ataladi. Har bir xotira joyi ma'lum turdagi ma'lumotlarni saqlashi mumkin. Har bir ma'lumot turi uchun xotira hajmi boshqacha. Int ma'lumotlar turi raqamli qiymatlarni kasrsiz saqlash uchun ishlatiladi. Float va double ma'lumotlar turlari raqamli qiymatlarni kasrli nuqtalar bilan saqlash uchun ishlatiladi. Char ma'lumotlar turi bitta belgi qiymatini saqlash uchun ishlatiladi. Xuddi shunday, har bir ma'lumot turi turiga qarab ma'lum bir qiymatni saqlashi mumkin. Python kabi dasturlash tillarida o'zgaruvchining turini e'lon qilish shart emas. Agar dasturchi a=3 deb yozilsa, Python avtomatik ravishda uning butun son o'zgaruvchisi ekanligini aniqlaydi. Java kabi dasturlash tillarida dasturchi ma'lumotlar turini ko'rsatishi kerak. Agar o'zgaruvchi int deb e'lon qilingan bo'lsa, u unga belgi qiymatini bera olmaydi. int va long ikkita ma'lumot turidir. Ushbu maqolada int va long o'rtasidagi farq muhokama qilinadi. int va long o'rtasidagi asosiy farq shundaki, int 32 bit kengligida, long esa 64 bit kenglikda.
Int nima?
Int ma'lumotlar turi eng ko'p ishlatiladigan ma'lumotlar turi bo'lib, unda butun son qiymati mavjud. Bu Java kabi ko'plab dasturlash tillari tomonidan qo'llab-quvvatlanadigan oldindan belgilangan ma'lumotlar turi. Butun o'zgaruvchini e'lon qilish uchun "int" kalit so'zi ishlatiladi. Shuning uchun uni o'zgaruvchi nomi yoki usul nomi kabi identifikator sifatida ishlatib bo'lmaydi. Quyidagi misol dasturga qarang.
01-rasm: int qiymatli Java dasturi
Yuqoridagi dasturga ko’ra a o’zgaruvchisi int bo’lib, 10 qiymatiga ega. b o’zgaruvchisi int bo’lib, 20 qiymatiga ega. a va b yig’indisi hisoblab chiqiladi va o’zgaruvchi sumga tayinlanadi. Bu ham butun sondir. For tsiklida 'i' hisoblagich o'zgaruvchisidir. Bu butun son. U 5 marta takrorlanadi. “i” qiymati 6 ga aylanganda shart noto‘g‘ri bo‘ladi va tsikldan chiqib ketadi.
Ma'lumotlar turlarida matn terish mumkin. Bu bitta ma'lumot turini boshqa ma'lumotlar turiga aylantirish jarayonidir. Kattaroq ma'lumotlar turiga kichikroq ma'lumot turini tayinlashda, translatsiya talab qilinmaydi. Kengayish bayt, short, int, long, float, double kabilarda sodir bo'ladi. Kichikroq maʼlumot turiga kattaroq maʼlumot turini belgilashda translatsiya qilish kerak.
02-rasm: Casting
Yuqoridagi dasturda num1 o'zgaruvchisi 10 qiymatiga ega. num2 o'zgaruvchisi 20 qiymatiga ega. Jami int. Int baytdan kattaroq ma'lumotlar turi bo'lgani uchun bayt o'zgaruvchisiga saqlash uchun uni baytga yozish kerak bo'ladi. Agar matn terish bo‘lmasa, bu butun son qiymati bayt o‘zgaruvchisiga tayinlanganligini anglatadi, shuning uchun kompilyatsiya vaqtida xatolik yuzaga keladi.
Uzoq nima?
long - bu Java kabi tillar tomonidan taqdim etilgan oldindan belgilangan ma'lumotlar turi. Java-da ma'lumotlar diapazoni -9, 223, 372, 036, 854, 775, 808(-2^63) dan 9, 223, 372, 036, 854, 775, 807 (shu jumladan) (2^63-) gacha. 1). Uning kengligi 64 bit. Uzoq vaqt uchun baytlar soni 8 baytni tashkil qiladi. Bir bayt 8 bitga teng. Quyidagi dasturga qarang.
03-rasm: Uzoq qiymatli Java dasturi
Yuqoridagi dasturga ko'ra, kenglik va uzunlik uzun o'zgaruvchilardir. Olingan qiymat uzun o'zgaruvchiga tayinlanadi. Long - eng katta ma'lumotlar turi. Boshqa ma'lumotlar turlari uzundan kichikroq. Shunday qilib, boshqa ma'lumotlar turlari uzunlikka yozilmasdan tayinlanishi mumkin. int ga uzun qiymat tayinlashda matn terish talab qilinadi.
Int va long oʻrtasidagi oʻxshashlik nimada?
Ham int, ham long - Java kabi dasturlash tillari tomonidan qo'llab-quvvatlanadigan oldindan belgilangan ma'lumotlar turlari
Int va long oʻrtasidagi farq nima?
int va long |
|
Int ma'lumotlar turi 32 bitli imzolangan ikkita to'ldiruvchi butun son. | Uzun ma'lumot turi 64 bitli imzolangan ikkita to'ldiruvchi butun son. |
Baytlar soni | |
Int uzunligi 4 bayt. | Uzunligi 8 bayt. |
Minimal qiymat | |
Int ning minimal qiymati Java’da – 2, 147, 483, 648 (-2^31) | Longning minimal qiymati Java'da -9, 223, 372, 036, 854, 775, 808(-2^63) |
Maksimal qiymat | |
Int ning maksimal qiymati Java'da 2, 147, 483, 647 (shu jumladan) (2^31-1) | Longning maksimal qiymati: Java'da 9, 223, 372, 036, 854, 775, 807 (shu jumladan) (2^63-1) |
Birlamchi qiymat | |
Int ning standart qiymati 0. | Longning standart qiymati 0L. |
Kalit soz | |
“int” kalit soʻzi butun sonni eʼlon qilish uchun ishlatiladi. | “long” kalit soʻzi uzunlikni eʼlon qilish uchun ishlatiladi. |
Kerakli xotira | |
Int uzoqdan kamroq xotira talab qiladi. | Long uchun intga qaraganda koʻproq xotira talab qilinadi. |
Xulosa – int vs long
Dasturlashda ma'lumotlarni saqlash kerak. Ushbu ma'lumotlar xotira joylarida saqlanadi. Ushbu xotira joylari o'zgaruvchilar deb ataladi. Har bir o'zgaruvchida saqlanishi kerak bo'lgan ma'lum turdagi ma'lumotlar mavjud. Int, char, double va float kabi maʼlumotlar turlari mavjud. Ushbu maqolada int va long maʼlumotlar turlari oʻrtasidagi farq muhokama qilingan. Int ma'lumotlar turi 32 bitli imzolangan ikkita to'ldiruvchi butun sondir. Uzun ma'lumotlar turi 64 bitli imzolangan ikkita to'ldiruvchi butun sondir. long int ga qaraganda kattaroq ma'lumotlar turidir.int va long o'rtasidagi farq shundaki, int kengligi 32 bit, long esa 64 bit.