java判斷double
⑴ java語言中 如何判斷 一個 double形變數a 是否是整數
lic static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("請輸入double類型的數字:");
double d = sc.nextDouble();
if((int)d == d){ //強制轉換後會丟失精度,如果丟失精度的數和原數相等,說明就是整數
System.out.println("輸入的數字是整數");
}else{
System.out.println("輸入的數字不是整數");
}
⑵ java中如何判斷輸入的是int還是double
用try...catch就很方便了,同時做了數據類型轉換:
//s是獲得到的String值
try{
int a = Integer.parseInt(s);
}catch(NumberFomatException e1){
try{
double b = Double.parseDouble(s);
}catch(NumberFomatException e2){
System.out.println("輸入數據類型不符!");
}
}
還有,照一樓的說法,做遍歷查找是否包含小數點,還不如用indexof()更好,要循環幹嘛。
//s是獲得到的String值
int index = s.indexOf(".");
//indexOf()返回小數點的下標,找不到的話返回-1
boolean flag = false;
if(index!=-1){
flag = true; //true表示有小數點,就是說是double數據
}
//if判斷可以用三目運算符代替:flag = (index==-1)? false:true;
⑶ java里怎麼判斷一個變數,是否是int型,或者是否是double型
你可以用一個字元串來保存你的輸入,然後你可以將輸入利用String類庫中的函數進行轉換,或者利用contains()函數看,是否還有小數點。
System.out.println("please input the ten strings:");
Scanner sc = new Scanner(System.in);
String number = sc.nextLine();
if(number.contains(".")){
//說明是一個小數
double d = Double.valueOf(s);
}
else{
//
int i = Integer.valueOf(s);
}
⑷ java中變數a是double型的。怎麼判斷a是否為null
double是基本類型,不能判斷null。
可以將double轉換成包裝類Double,這樣就可以判斷null了。
1 :if(a==b==c); 多了分號
2:if(a==b!=c||a==c!=b||b==c!=b) 應是if(((a==b)&&(b!=c))||((a==c)&&(b!=c))||((b==c)&&(b!=c)))
3: if(a==b!=c||a==c!=b||b==c!=b&&a*a+b*b==c*c||b*b+c*c==a*a||a*a+c*c==b*b)
應是
if(((a==b)&&(b!=c))||((a==c)&&(b!=c))||((b==c)&&(b!=c))&&(a*a+b*b==c*c||b*b+c*c==a*a||a*a+c*c==b*b))
⑸ java中變數a是double型的。怎麼判斷a是否為null
Double a = Double.NaN;
//第一種 前兩種要求類型是Double即包裝類
System.out.println(a.equals(Double.NaN));
//第二種
System.out.println(a.equals(0.0d / 0.0));
//第三種 使用Double的靜態方法,方法實現就是第四種 類型無要求
System.out.println(Double.isNaN(a));
//第四種 利用NaN自己和自己不相等的特性,
//要求類型必須是double,不能是包裝類,否則結果是false
//因為包裝類是引用類型,比較的!=是地址的比較而不是值的比較。
double b = Double.NaN;
System.out.println(b != b);
(5)java判斷double擴展閱讀:
實際開發中常常遇到這種需求:double類型的數據如果為空,就展示空字元串;如果為0,就展示0。
一般是這樣做,新建一個model,和資料庫里的欄位,數據類型一一對應。然後把資料庫里的數據取到這個model的集合里,然後進行進一步處理。
這時候就有個問題,比如double類型會默認初始化為0,這樣就無法區分資料庫里是0值還是null。
解決方法一
再從資料庫中獲取你所需要的數據的條數。這樣如果值為0且數據條數小於等於0,這種情況就是空值;否則就是0.
解決方法二
可空類型。double,有0值就是0,沒有值就是null。
⑹ java 判斷是float還是double
向參與運算的操作數的類型中的最高精度轉型,所以答案是float類型。如果有小數參與運算,則為double類型,因為java默認小數直接量是double類型的。如:
int
n=100;
float
f=1.1f;
則n+f的結果是float類型的,而6.0+n+f的結果是double類型的。
⑺ java怎麼判斷給定字元串是否為double類型
如果確定這字元串全是數字的話.你可以截取起始位到 indexOf(".") 到這個點.然後由這個點到此字元串的length() 當然.連"."都找不到就不用再截取.直接這字元串就不是double啦