Pertanyaan Bagaimana cara mengubah Double to int secara langsung? [duplikat]


Pertanyaan ini sudah memiliki jawaban di sini:

Mungkin ini pertanyaan konyol. Saya ingin menyingkirkan bagian pecahan dari Double jumlah. Tapi saya tidak bisa melakukan itu. Ini menunjukkan kesalahan bahwa jenis yang tidak kompatibel. Apa yang harus dilakukan?

Double to int konversi dalam satu baris .... tolong bantu terima kasih


75
2018-03-23 10:56


asal


Jawaban:


Jika Anda benar-benar harus menggunakan Double, bukan ganda, Anda bahkan bisa mendapatkan int Value of Double dengan menelepon:

Double d = new Double(1.23);
int i = d.intValue();

Yang lain sudah dijelaskan oleh jawaban Peter Lawreys.


164
2018-03-23 11:04



Semua jawaban lainnya benar, tetapi ingat bahwa jika Anda melipatgandakan ke int Anda akan kehilangan nilai desimal .. jadi 2,9 ganda menjadi 2 int.

Kamu dapat memakai Math.round(double) berfungsi atau cukup lakukan:

(int)(yourDoubleValue + 0.5d)

25
2018-02-12 16:56



double myDb = 12.3;
int myInt = (int) myDb;

Hasilnya adalah: myInt = 12


17
2018-03-04 10:41



coba transmisikan nilainya

double d = 1.2345;
long l = (long) d;

9
2018-03-23 10:58



int average_in_int = ( (Double) Math.ceil( sum/count ) ).intValue();

2
2018-01-28 11:32