Sobes.tech
Junior

Qanday qilib referens turlarini primitiv turlarga va aksincha o'tkazish mumkin?

sobes.tech AI

AIdan javob

Java'da referans tiplari (qutblar) bilan primitiv tiplari (unboxing) o'rtasidagi konversiya avtomatik ravishda amalga oshadi, lekin uni aniq qilish ham mumkin.

Autoboxing: Primitiv tipning mos keladigan referans tipiga avtomatik konversiyasi.

int primitiveInt = 10;
// Avtomatik ravishda Integer ga konvertatsiya qilinadi
Integer wrapperInt = primitiveInt; 

Unboxing: Referans tipining mos keladigan primitiv tipiga avtomatik konversiyasi.

Integer wrapperInteger = 20;
// Avtomatik ravishda int ga konvertatsiya qilinadi
int primitiveInteger = wrapperInteger;

Aniq konversiya:

Referans tipidan primitiv tipga konversiya: intValue(), doubleValue(), va boshqalar metodlar yordamida.

Integer wrapperInt = 30;
int primitiveInt = wrapperInt.intValue(); // aniq konversiya

Double wrapperDouble = 40.5;
double primitiveDouble = wrapperDouble.doubleValue(); // aniq konversiya

Primitiv tipdan referans tipiga konversiya: konstruktorlar yoki statik metodlar valueOf() yordamida. valueOf() metodi afzalroq, chunki u qiymatlarni kechiktirish imkonini beradi.

int primitiveInt = 50;
Integer wrapperInt = new Integer(primitiveInt); // eskirgan konstruktor

double primitiveDouble = 60.7;
Double wrapperDouble = Double.valueOf(primitiveDouble); // `valueOf()` yordamida

Konversiya jadvali:

Primitiv tip Referans tip
boolean Boolean
byte Byte
short Short
char Character
int Integer
long Long
float Float
double Double