java取小數
A. java如何取小數點前兩位,並四捨五入
finalclassr{
publicstaticvoidmain(String...args){
System.out.println(Math.round(Float.parseFloat(args[0])));
}
}
B. java 取小數問題
可以用DecimalFormat來做
在output的時候加上去
例:
DecimalFormat digits=new DecimalFormat("0.0");//取一位,如要取多位,寫多幾個0上去
System.out.println(digit.format(result));
應該是吧,你可以試試``````對了,你還要import java.text.DecimalFormat
C. java 除法怎樣取小數部分
(((double)lili1)/lili)
-
(lili1/lili)就可以了,如果想顯示出小數,必須要將數值轉換為float或double類型才可以,推薦double類型
D. java怎麼取實數中的小數部分
首先樓上那兩位對於普通的使用場景來說基本是正確的。但是在一些需要精確結果的場景中(比如貨幣金額計算),double就會有問題了,比如:
(int)1023.99999999999999=1024;
再比如:
doublen1=0.03;
doublen2=0.02;
doublen3=n1-n2;
System.out.println(n3);//0.009999999999999998
所以如果需要精確安全的操作的話,需要用到這個類:java.math.BigDecimal
調用它的divideAndRemainder方法來進行計算,該計算可以理解為:進行一次保留余數的除法運算。結果會返回一個BigDecimal類型且長度為2的數組,0下標的元素是該計算的商,1下標的元素是該結果的余數。
BigDecimaln4=newBigDecimal("1023.99999999999999");
BigDecimal[]result=n4.divideAndRemainder(BigDecimal.valueOf(1));
System.out.println(result[1].toString());//0.99999999999999
注意,構造BigDecimal對象的時候我使用的是字元串String類型的「1023.99999999999999
」,如果直接寫1023.99999999999999的話會被認為是double類型的數,然後double類型的該值為1024.0,所以給字元串類型的值可以保證BigDecimal對象接收到的數就准確無誤是我們心裡想的數。
E. java中保留小數問題!!!
double i = 12.3659963; //設數值
int j = (int)Math.round(i * 100); //小數點後兩位前移,並四捨五入
double k = (double)j / 100.00; //還原小數點後兩位
F. java中 double型取小數部分
double
dd=123.34;
int
i=(int)dd;
第二句的意思是把第一個double值強制轉換成int型,然後你相減就好了。但是這樣做可能在不同的JDK版本下會損失精度,出現那樣問題的話自己再取個固定位數值就好了。
G. 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
H. 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);
}
}
I. Java怎麼實現提取小數的整數部分的功能
Math類中提供了三個與取整有關的方法:ceil、floor、round,這些方法的作用與它們的英文名稱的含義相對應,例如,ceil的英文意義是天花板,該方法就表示向上取整,Math.ceil(11.3)的結果為12,Math.ceil(-11.3)的結果是-11;floor的英文意義是地板,該方法就表示向下取整,Math.ceil(11.6)的結果為11,Math.ceil(-11.6)的結果是-12;最難掌握的是round方法,它表示「四捨五入」,演算法為Math.floor(x+0.5),即將原來的數字加上0.5後再向下取整,所以,Math.round(11.5)的結果為12,Math.round(-11.5)的結果為-11。