Dalam program berikut ini
class ZiggyTest2 {
public static void main(String[] args){
double x = 123.456;
char c = 65;
int i = 65;
System.out.printf("%s",x);
System.out.printf("%b",x);
System.out.printf("%c",c);
System.out.printf("%5.0f",x);
System.out.printf("%d",i);
}
}
Keluarannya adalah
123.456trueA 12365
Dapatkah seseorang menjelaskan bagaimana nilai ganda (yaitu 123.456
) dikonversi ke boolean (yaitu true
)
Alasan saya bertanya adalah karena saya tahu java tidak mengizinkan angka digunakan untuk nilai boolean. Sebagai contoh, berikut ini tidak diperbolehkan di Java
if (5) {
//do something
}
Terima kasih
Dokumentasi API tampaknya dengan jelas menyatakan alasannya.
Jika argumen arg adalah null, maka hasilnya adalah "false". Jika arg adalah boolean atau Boolean, maka hasilnya adalah string yang dikembalikan oleh String.valueOf(). Jika tidak, hasilnya adalah "true".