Java中输出保留小数点后几位的写法

做了个容器题,因为用到Double型输出的时候保留了小数点后很多位,不美观也不实用于是去查了保留小数点位数的写法

这是我的题,难度不大,就是输出有点问题

于是就是这样
保留几位就写几个零
保留几位就写几个0,很简单

顺便为了防止自己以后不会做这道题,把代码贴一下

package exp3;

import java.text.DecimalFormat;
import java.util.HashMap;
import java.util.Map;
import java.util.Scanner;

public class OnlineShop {
    
    
      public static void main(String []args) {
    
    
    	  Map books=new HashMap();
    	  String []booksName=null;
    	  Scanner in=new Scanner(System.in);
    	  int n=in.nextInt();
    	  for(int i=0;i<n;i++) {
    
    
    		  books.put(i, new BooksInfor(in.next(),in.nextDouble(),in.nextInt()));
    	  }
    	  double Total=getSum(books);
    	  DecimalFormat df=new DecimalFormat("#.00");
    	  System.out.println(df.format(Total));
      }

	private static double getSum(Map books) {
    
    
		// TODO 自动生成的方法存根
		double sum=0;
		for(int i=0;i<books.size();i++) {
    
    
			sum+=((BooksInfor)books.get(i)).getEtotal();
		}
		return sum;
	}
}
class BooksInfor{
    
    
	private String name;
	private double price;
	private int amount;
	public BooksInfor(String next,double nextDouble, int nextInt) {
    
    
		// TODO 自动生成的构造函数存根
		name=next;
		price=nextDouble;
		amount=nextInt;
	}
	double getPrice() {
    
    
		return price;
	}
	int getAmount() {
    
    
		return amount;
	}
	double getEtotal() {
    
    
		return price*amount; 
	}
}



猜你喜欢

转载自blog.csdn.net/needyn/article/details/106374336