程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程綜合問答 >> java小數轉換-剛學java的新手遇到的問題

java小數轉換-剛學java的新手遇到的問題

編輯:編程綜合問答
剛學java的新手遇到的問題

題目是這樣的,編一程序,將攝氏度換為華氏度。公式為:f=c*9/5+32.其中f為華氏度,c為攝氏度。
以下是我的代碼
import java.util.*;
public class Main{
public static void main (String[] args){
Scanner in1 = new Scanner(System.in);
int c =in1.nextInt();
double f = c*9/5+32;
System.out.println(f);
}
}
結果只有一位小數,不知道要怎樣才能轉換為2位小數

最佳回答:


c*9/5+32

你這個計算式子中都是整型參數,默認會取整的,計算結果不精確,需要最前面的參數轉換為double進行計算,簡單來講就是乘以1.0,即計算式修改為:

double f = c*1.0*9/5+32; 

然後就是格式化的問題了,建議你使用java.text.DecimalFormat,其參數中可以指定小數的位數,如下面的小數點後面兩個零表示兩位小數,0和#的區別在於#在最前面和最後面代表0時不顯示該位,0會強制顯示為0。

double f = c*1.0*9/5+32; 
DecimalFormat df = new DecimalFormat("#.00");
System.out.println(df.format(f));
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved