Mesej Ralat: "Nombor Integer Terlalu Besar" untuk 600851475143
Kod Java yang disediakan bertujuan untuk mencari faktor perdana terbesar bagi nombor tertentu . Walau bagaimanapun, apabila menjalankan kod untuk input 600851475143, ia menimbulkan ralat. Ralat ini disebabkan oleh fakta bahawa Java mewakili integer sebagai nombor 32-bit secara lalai. Akibatnya, nombor 600851475143, yang melebihi nilai maksimum integer 32-bit, tidak boleh dimasukkan dalam julat ini.
Untuk menyelesaikan isu ini, kami boleh menggunakan jenis data panjang Java, yang mewakili 64- integer bit dan boleh mengendalikan nilai berangka yang lebih besar. Dalam kod yang diberikan, cuma gantikan pengisytiharan nombor input dengan yang berikut:
obj.function(600851475143L);
Dengan menambahkan "L" di hujung nombor, kami menentukannya sebagai literal yang panjang. Ini memastikan bahawa Java mewakili nombor sebagai integer 64-bit, mengelakkan ralat "Nombor integer terlalu besar".
Atas ialah kandungan terperinci Mengapa Kod Java Saya Membuang Ralat 'Nombor Integer Terlalu Besar' untuk 600851475143?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!