Junior
İstinad tiplərini primitiv tiplərə və əksinə çevirmə necə həyata keçirilir?
sobes.tech Süni İntellekt
AI-dan cavab
Java-da istinad tipləri (qutular) ilə primitiv tiplər (unboxing) arasında çevirmə avtomatik həyata keçirilir, lakin bunu açıq şəkildə də etmək mümkündür.
Autoboxing: Primitiv tipin müvafiq istinad tipinə avtomatik çevrilməsi.
int primitiveInt = 10;
// Avtomatik olaraq Integer-ə çevrilir
Integer wrapperInt = primitiveInt;
Unboxing: İstinad tipinin müvafiq primitiv tipe avtomatik çevrilməsi.
Integer wrapperInteger = 20;
// Avtomatik olaraq int-ə çevrilir
int primitiveInteger = wrapperInteger;
Açıq çevirmə:
İstinad tipindən primitiv tipe çevirmə: intValue(), doubleValue(), və s. metodlardan istifadə etməklə.
Integer wrapperInt = 30;
int primitiveInt = wrapperInt.intValue(); // açıq çevirmə
Double wrapperDouble = 40.5;
double primitiveDouble = wrapperDouble.doubleValue(); // açıq çevirmə
Primitiv tipdən istinad tipinə çevirmə: konstruktorlar və ya statik valueOf() metodlarından istifadə etməklə. valueOf() metodu üstünlük təşkil edir, çünki dəyərləri keşikdə saxlaya bilər.
int primitiveInt = 50;
Integer wrapperInt = new Integer(primitiveInt); // köhnə konstruktor (artıq istifadə edilmir)
double primitiveDouble = 60.7;
Double wrapperDouble = Double.valueOf(primitiveDouble); // `valueOf()` istifadə edilərək
Çevirmə cədvəli:
| Primitiv Tip | İstinad Tipi |
|---|---|
| boolean | Boolean |
| byte | Byte |
| short | Short |
| char | Character |
| int | Integer |
| long | Long |
| float | Float |
| double | Double |