package ord;
import java.util.ArrayList; public class order {
public String orderid;
public user user;
public ArrayList<product> pdls;
public float ordernum;
public float ordmon;
public double acfee;
public double tolmon;
public void getdeunt() {
float sum=0;
for(int i=0;i<this.pdls.size();i++) {
sum +=this.pdls.get(i).price *this.pdls.get(i).num; }
this.ordmon = sum; }
public void setmon() {
double tmp=0;
if(this.ordmon>=1000 & this.ordmon<2000) {
tmp=0.98;
}
else if(this.ordmon>=2000 & this.ordmon <3000) {
tmp=0.95; }
else if(this.ordmon>=3000) {
tmp=0.90;
}
//user level
double acfee=0;
if(this.user.level.equals("gold")) {
acfee=0.98*tmp;
}
else if(this.user.level.equals("dia")) {
acfee = 0.96*tmp; }
else if(this.user.level.equals("super")) {
acfee=0.92*tmp; }
this.acfee=acfee; }
public void acmon() {
double tmon;
tmon =this.acfee * this.ordmon;
this.tolmon=tmon; }
}
package ord;

public class product {
String orderid;
String pron;
double price;
Integer num; public product(String orderid,String name,double price,int num) {
this.orderid =orderid;
this.pron = name;
this.price =price;
this.num =num;
}
}
package ord;

public class user {
String usid;
String usna;
String level;
public user(String usid,String usna,String level) {
this.usid =usid;
this.usna=usna;
this.level=level; } }
package ord;
import java.util.ArrayList; public class ordertt { public static void main(String []args) {
order o1 =new order();
user user=new user("a","li","gold");
o1.user =user; ArrayList<product> pdfs = new ArrayList<product>();
product p1 = new product("1","ab",11.1,200);
product p2 = new product("2","abb",10,200);
pdfs.add(p1);
pdfs.add(p2);
o1.pdls = pdfs;
o1.getdeunt();
o1.setmon();
o1.acmon();
System.out.print(o1.tolmon); } }

java订单金额分级计算的更多相关文章

  1. 货币金额的计算 - Java中的BigDecimal

    在<Effective Java>这本书中也提到这个原则,float和double只能用来做科学计算或者是工程计算,在商业计算中我们要用 java.math.BigDecimal.,而且使 ...

  2. Java工具类之——BigDecimal运算封装(包含金额的计算方式)

    日常对于金额计算,应该都是用的BigDecimal,  可是苦于没有好的工具类方法,现在贡献一个我正在用的对于数字计算的工具类,项目中就是用的这个,简单粗暴好用,话不多说,代码奉上(该工具类需要引入g ...

  3. Java订单功能模块设计与实现

    在商城项目中,之前我们介绍了购物车功能模块的实现,商品加入到购物车之后,就是到购物车结算,然后显示购物车的商品列表,点击去结算,然后到了未提交前的订单列表, 点击提交订单后,生成此订单,返回订单的订单 ...

  4. [ JAVA编程 ] double类型计算精度丢失问题及解决方法

    前言 如果你在测试金融相关产品,请务必覆盖交易金额为小数的场景.特别是使用Java语言的初级开发. Java基本实例 先来看Java中double类型数值加.减.乘.除计算式实例: public cl ...

  5. TVA金额的计算,以及应该放在那里

    标记TTC价格的货物,有以下内容:TTC原价(自动提取),折扣(输入),折扣之后的减价(代金券,或者再次减价),最终TTC单价(自动计算).税率(输入),HT单价(自动计算),单价的税费(也可能不需要 ...

  6. Java集合框架练习-计算表达式的值

    最近在看<算法>这本书,正好看到一个计算表达式的问题,于是就打算写一下,也正好熟悉一下Java集合框架的使用,大致测试了一下,没啥问题. import java.util.*; /* * ...

  7. 金额的计算BigDecimal类

    金额的计算BigDecimal类 double d = 9.84; double d2 = 1.22; //注意需要使用BigDecimal(String val)构造方法 BigDecimal bi ...

  8. 简单的java Hadoop MapReduce程序(计算平均成绩)从打包到提交及运行

    [TOC] 简单的java Hadoop MapReduce程序(计算平均成绩)从打包到提交及运行 程序源码 import java.io.IOException; import java.util. ...

  9. Java订单号生成,唯一订单号(日均千万级别不重复)

    Java订单号生成,唯一订单号 相信大家都可以搜索到很多的订单的生成方式,不懂的直接百度.. 1.订单号需要具备以下几个特点. 1.1 全站唯一性. 1.2 最好可读性. 1.3 随机性,不能重复,同 ...

随机推荐

  1. LVS (一) 原理

    LVS原理概述 负载均衡就是,在多个提供相同服务主机的前段,增加一个分发器,根据用户请求,然后根据某种方式或者策略,将用户请求分发到提供服务的主机上.同时负载均衡应用还应该提供对后其后端服务健康检查的 ...

  2. 前端笔记之JavaScript面向对象(三)初识ES6&underscore.js&EChart.js&设计模式&贪吃蛇开发

    一.ES6语法 ES6中对数组新增了几个函数:map().filter().reduce() ES5新增的forEach(). 都是一些语法糖. 1.1 forEach()遍历数组 forEach() ...

  3. 基于 DataLakeAnalytics 做跨地域的数据分析

    在阿里云上,很多客户的应用都是多地域部署的, 比如在北京(cn-beijing)的地域部署一个应用让北方的客户访问快一点,同时在杭州(cn-hangzhou)地域部署一份让南方的客户访问快一点.多地域 ...

  4. centos通过yum安装mysql

    前言 前天按照Oracle上的文档装了一遍mysql,选了最新8.0的版本,后来出现一些问题,网上搜答案,出来的基本还是5.x版本的解决方案,并不适用8.0版本.然后我就去看了一下公司的正式环境买的阿 ...

  5. Ubuntu16.04下OpenCV调用笔记本摄像头

    1,新建一个test.cpp文件,插入下列代码,保存 #include<opencv2/opencv.hpp> #include<iostream> using namespa ...

  6. pdf文件下载水印添加的中文与空格问题解决

    public static boolean waterMark(String inputFile, String outputFile, String waterMarkName)throws IOE ...

  7. Ubuntu18.04下安装配置MongoDB4.0.6

    搭建MongoDB环境 安装MongoDB 1.下载安装包 MongoDB 提供了 linux 各发行版本 64 位的安装包,你可以在官网下载安装包. 下载地址:https://www.mongodb ...

  8. 如何删除织梦系统power by dedecms

    很多织梦系统底部会自带power by dedecms,这个power by dedecms是什么意思呢?这个power by 是织梦系统版权信息,但是织梦系统是开源免费的,所以今天小编就和大家说说如 ...

  9. KsUML 免费的类图建模工具

    最近基于SharpDevelop和NClass两个开源软件,开发了一个免费的类图建模工具,详情请访问 www.TimeGIS.com KsUML类图建模工具是一个用来给软件开发人员使用的一种UML类图 ...

  10. arcgis api for js入门开发系列十九图层在线编辑

    本篇主要讲述的是利用arcgis api实现图层在线编辑功能模块,效果图如下: 实现思路: 1.arcgis server发布的FeatureServer服务提供的图层在线编辑能力: 2.实现的在线编 ...