java小數
⑴ java 語言中怎樣輸入小數點的數,如(9.55)
你說得很不清楚,如果你需要從鍵盤上輸入一個數的話,可以:
使用Scanner類。
Scanner sc = new Scanner(System.in);
double d = sc.nextDouble();
或者使用其它的IO流,
String line = InputStream(System.in).readLine();
double d = Double.parseDouble(line);
IO流的api有可能是錯誤的,但基本原理就是這樣
⑵ java小數加法
System.out.printf("%.2f\n",0.9+0.9+0.1+0.5);//用類似c語言的格式輸出
System.out.format("%.2f\n", 0.9+0.9+0.1+0.5);//java.util.Formatter包中的format方法格式輸出
System.out.format("%1$.2f", 0.9+0.9+0.1+0.5);//1$代表第一個參數.2f代表精確到小數點後2位
2.40
2.40
2.40
程序輸出結果均為2.40
建議多查API
⑶ 關於Java 小數(浮點型)相加
float的有效精度只有7位,超過了就改為double,不然無法精確運算。
double Java里兩個二位小數相加,會得到小數點後很多位,這是double的缺點,你可以使用BigDecimal 來精確運算。例子:
importjava.math.BigDecimal;
publicclasstest{
publicstaticvoidmain(String[]args){
doublekk=3.14;
kk+=0.37;
System.out.println(kk);
BigDecimalb1=newBigDecimal("3.14");
BigDecimalb2=newBigDecimal("0.37");
BigDecimalb3=b1.subtract(b2);
BigDecimalb4=b1.add(b2);
System.out.println(b3);
System.out.println(b4);
}
}
⑷ java中取小數部分
import java.math.BigDecimal;
import java.util.Scanner;
public class GetFloat {
public static void main(String args[]) {
Scanner in = new Scanner(System.in);
float f = in.nextFloat();
int fInt = (int) f;
BigDecimal b1 = new BigDecimal(Float.toString(f));
BigDecimal b2 = new BigDecimal(Integer.toString(fInt));
float fPoint = b1.subtract(b2).floatValue();
System.out.println("整數部分為:" + fInt + "\n" + "小數部分為: " + fPoint);
}
}
⑸ java小數比較
double類型的數值比較應該使用差值的絕對值
例如:public class DoubleCompare
{
public static void main(String[] args)
{
float a = 0.6f;
double b = 0.6;
System.out.println(a == b);
System.out.println(Math.abs(a - b) <= 0.0000001);
}
}
第一個列印為false,第二個為true
⑹ java 小數變數類型
double和float才能標識小數,其餘的不可以,float便是單精度,double標識雙精度,就是小數位數不同。
⑺ java中小數的默認類型是什麼
小數屬於浮點型(默認為double)。
浮點型代表的是實數,其實就是包含小數的部分。也知道現實世界中是由很多復雜的數據的,所以需要這種表示實數的數據類型的支持。
一、浮點型常量
Java的實常數有兩種表示形式:
十進制數形式,由數字和小數點組成,且必須有小數點,如0.123, .123, 123. ,123.0 。
科學計數法形式。如:123e3或123E3,其中e或E之前必須有數字,且e或E後面的指數必須為整數。實常數在機器中佔64位,具有double型的值。對於float型的值,則要在數字後加f或F,如12.3F,它在機器中佔32位,且表示精度較低。
二、浮點型變數
浮點型變數的類型有float和double兩種。
數據類型所佔位數的范圍:
float 32位 3.4e-038~3.4e+038 ;
double 64位 1.7e-308~1.7e+308 ;
雙精度類型double比單精度類型float具有更高的精度,和更大的表示範圍,常常用於科學計算等高精度場合。
三、浮點型變數定義舉例
float f; //指定變數f為float型
double d; //指定變數d為double型
java中沒有無符號型整數,而且明確規定了整型和浮點型數據所佔的內存位元組數,這樣就保證了安全性、魯棒性和平台無關性。
⑻ java 保留一位小數
按照你的要求編寫的Java程序如下:
importjava.util.Scanner;
publicclassA{
publicstaticvoidmain(String[]args){
intb=1024;
Scannersc=newScanner(System.in);
System.out.println("請輸入任意整數:");
inta=sc.nextInt();
doublec=(double)a/b;
System.out.println(String.format("%.1f",c));
}
}
運行結果:
請輸入任意整數:
3679
3.6
⑼ Java有一個小數,如何去掉小數部分
1、Math.round(float f)對小數部分四捨五入
或者強值類型轉換成int類型,直接去掉小數部分!
2、
3、向上取整:Math.ceil() //只要有小數都+1
向下取整:Math.floor() //不取小數
四捨五入:Math.round() //四捨五入
⑽ java 小數
小數默認是double類型的,f的作用是將double類型強制轉換為float類型.