Secara ringkas tentang int dan jenis berganda di Jawa

int ialah jenis Java primitif untuk nombor integer (seperti -25, 0, 1828182845). Jenis ini menggunakan 32 bit untuk menyimpan nilai berubah. Julat nombor int adalah dari -231 hingga 231 - 1 atau, yang sama, dari -2147483648 hingga 2147483647. Jenis berganda dalam Java mewakili nombor titik terapung, memperuntukkan 64 bit dalam ingatan dan julat jenis ialah -1.7 *10308 hingga 1.7*10308. Jika anda mewakili julat int dalam bentuk yang sama, ia akan menjadi -2*109 до +2*109. Saya fikir adalah jelas bahawa sebarang bilangan jenis int akan dimuatkan ke dalam memori yang diperuntukkan untuk beberapa jenis primitif berganda. Di samping itu, sebarang integer boleh diwakili sebagai nombor pecahan dengan bahagian pecahan sifar. Dari sudut pandangan matematik, tidak ada keraguan bahawa: 5 = 5.0 atau -57.0 = -57.

Menukar int kepada dua kali ganda

Dari perspektif Java, jenis double dan int juga serasi. Memandangkan penukaran int kepada dua kali ganda adalah mengenai menghantar lebih besar kepada lebih kecil, penukaran jenis ini memanggil selongsong atau pelebaran jenis tersirat. Anda boleh menukar int kepada berganda dalam Java secara automatik, dengan memberikan nilai int kepada pembolehubah berganda. Mari kita dapatkan contoh kod taip:

public class intToDouble {
   public static void main(String[] args) {
       int myInt1 = 10;
       int myInt2 = 2147483647;
       double myDouble1, myDouble2;
       System.out.println("my integers are: " + myInt1 + ", " + myInt2);
       myDouble1 = myInt1;
       myDouble2 = myInt2;
       System.out.println("after typecasting/widening to double: " + myDouble1 + ", " + myDouble2);
   }
}
Berikut adalah outputnya:
integer saya ialah: 10, 2147483647 selepas taip/pelebaran kepada dua kali ganda: 10.0, 2.147483647E9
Nota: E9 di sini bermaksud 109, ia dipanggil notasi saintifik. Perhatikan juga bahawa nombor berganda biasanya ditulis dengan noktah yang memisahkan bahagian pecahan. jika anda mengisytiharkan pembolehubah berganda dan meletakkan nilai di dalamnya, ia tidak perlu melakukan ini, tetapi dalam output nombor berganda akan sentiasa mempunyai bahagian pecahan, walaupun ia adalah sifar.

Menukar int kepada dua kali ganda menggunakan operasi berangka neutral

Selain itu, semua operasi berangka pada pembolehubah jenis yang berbeza dalam Java membawa kepada pelebaran jenis. Iaitu, hasil operasi akan menjadi jenis yang lebih luas. Oleh itu, untuk menukar daripada int kepada dua kali ganda, anda boleh menggunakan operasi "neutral". Contohnya, darab int dengan 1.0 (nombor berganda) atau tambah 0.0 pada int. Berikut ialah contoh jenis penuangan sedemikian:

public class intToDouble {
   public static void main(String[] args) {
       double a = 1;  //you can also write 1.0 here. If you print it out it will be 1.0
       int b = 5, x = 7;
       System.out.println(x + 0.0);
       System.out.println(a*b);
   }
}
Outputnya ialah:
7.0 5.0
Dengan cara ini, anda boleh menukar kepada dua kali ganda bukan sahaja int, tetapi semua jenis primitif berangka. Berikut ialah susunan penukaran yang mungkin daripada terkecil kepada terbesar:
Bait -> Pendek -> Char -> Int -> Panjang -> Terapung -> Berganda