- 浏览: 41357 次
- 性别:
- 来自: 杭州
最近访客 更多访客>>
文章分类
最新评论
-
Demin7926:
正好想要这样的数据,而且最好还是.mdf的,但还是不错了,多谢 ...
中国地区数据库Access c#生成sql数据文件 -
zhuzidian:
1.这个classpath是没有必要设置的,那几个jar默认会 ...
Java开发环境的搭建 -
蜡笔小新:
收下
请问第2条中,J2EE开发环境下载什么样的sdk呢?
Java开发环境的搭建
package book.number; import java.math.BigDecimal; /** * 对数字进行各种模式的舍入,如四舍五入等 */ public class Round { /** * 利用java.lang.Math类对数字进行四舍五入 * @param dou 待舍入的数字 * @return */ public static long getTraRoundMath(double dou) { //Math.round方法采用首先将dou加上0.5,然后取下整数。 //dou = 4.6, 首先dou加0.5成5.1,其下整数为5。四舍五入的结果就是5。 return Math.round(dou); } /** * 对数字进行四舍五入 * @param dou 待舍入的数字 * @return */ public static long getTraRound(double dou) { //四舍五入模式相当于BigDecimal.ROUND_HALF_UP模式 return Round.getIntRound(dou, BigDecimal.ROUND_HALF_UP); } /** * 要求舍入后返回整数类型, * * @param dou 待舍入的数字 * @param roundmode 舍入模式 * @return */ public static long getIntRound(double dou, int roundmode) { // 最后取得BigDecimal对象转化成int并返回。 return Round.getRound(dou, 0, roundmode).longValue(); } /** * 要求舍入后返回BigDecimal类型 * * @param dou 待舍入的数字 * @param scale 返回的BigDecimal对象的标度(scale) * @param roundmode 舍入模式 * @return */ public static BigDecimal getRound(double dou, int scale, int roundmode) { //创建一个新的BigDecimal对象paramNumber,该对象的值和dou大小一样。 BigDecimal paramNumber = new BigDecimal(dou); //然后调用paramNumber的setScale方法,该方法返回一个 BigDecimal对象temp, //返回值的标度为第一个参数指定的值,标度为大小表示小数部分的位数 //第二个参数指定了paramNumber对象到temp对象的舍入模式,如四舍五入等。 return paramNumber.setScale(scale, roundmode); //实际可以一条语句实现:return new BigDecimal(dou).setScale(0, roundmode); } public static void main(String[] args) { double dou1 = 8.50; double dou2 = -9.54; System.out.println("待舍入的数字:dou1 = " + dou1 + "; dou2 = " + dou2); System.out.println("采用Math类实现四舍五入的结果: \t" + Round.getTraRoundMath(dou1) + "\t" + Round.getTraRoundMath(dou2)); System.out.println("四舍五入后的结果: \t" + Round.getTraRound(dou1) + "\t" + Round.getTraRound(dou2)); System.out.println("要求舍入后返回整数:"); //接近正无穷大的舍入模式 System.out.println("舍入模式ROUND_CEILING: \t" + Round.getIntRound(dou1, BigDecimal.ROUND_CEILING) + "\t" + Round.getIntRound(dou2, BigDecimal.ROUND_CEILING)); //接近零的舍入模式 System.out.println("舍入模式ROUND_DOWN: \t" + Round.getIntRound(dou1, BigDecimal.ROUND_DOWN) + "\t" + Round.getIntRound(dou2, BigDecimal.ROUND_DOWN)); //舍入远离零的舍入模式 System.out.println("舍入模式ROUND_UP : \t" + Round.getIntRound(dou1, BigDecimal.ROUND_UP) + "\t" + Round.getIntRound(dou2, BigDecimal.ROUND_UP)); //接近负无穷大的舍入模式 System.out.println("舍入模式ROUND_FLOOR: \t" + Round.getIntRound(dou1, BigDecimal.ROUND_FLOOR) + "\t" + Round.getIntRound(dou2, BigDecimal.ROUND_FLOOR)); //向“最接近的”数字舍入,如果与两个相邻数字的距离相等,则为ROUND_DOWN舍入模式。 System.out.println("舍入模式ROUND_HALF_DOWN:\t" + Round.getIntRound(dou1, BigDecimal.ROUND_HALF_DOWN) + "\t" + Round.getIntRound(dou2, BigDecimal.ROUND_HALF_DOWN)); //向“最接近的”数字舍入,如果与两个相邻数字的距离相等,则向相邻的偶数舍入。 System.out.println("舍入模式ROUND_HALF_EVEN:\t" + Round.getIntRound(dou1, BigDecimal.ROUND_HALF_EVEN) + "\t" + Round.getIntRound(dou2, BigDecimal.ROUND_HALF_EVEN)); //向“最接近的”数字舍入,如果与两个相邻数字的距离相等,则为ROUND_UP舍入模式。 System.out.println("舍入模式ROUND_HALF_UP : \t" + Round.getIntRound(dou1, BigDecimal.ROUND_HALF_UP) + "\t" + Round.getIntRound(dou2, BigDecimal.ROUND_HALF_UP)); System.out.println(); System.out.println("要求舍入后返回数字的小数部分保留一位:"); System.out.println("舍入模式ROUND_CEILING: \t" + Round.getRound(dou1, 1, BigDecimal.ROUND_CEILING) + "\t" + Round.getRound(dou2, 1, BigDecimal.ROUND_CEILING)); System.out.println("舍入模式ROUND_DOWN: \t" + Round.getRound(dou1, 1, BigDecimal.ROUND_DOWN) + "\t" + Round.getRound(dou2, 1, BigDecimal.ROUND_DOWN)); System.out.println("舍入模式ROUND_UP : \t" + Round.getRound(dou1, 1, BigDecimal.ROUND_UP) + "\t" + Round.getRound(dou2, 1, BigDecimal.ROUND_UP)); System.out.println("舍入模式ROUND_FLOOR: \t" + Round.getRound(dou1, 1, BigDecimal.ROUND_FLOOR) + "\t" + Round.getRound(dou2, 1, BigDecimal.ROUND_FLOOR)); System.out.println("舍入模式ROUND_HALF_DOWN:\t" + Round.getRound(dou1, 1, BigDecimal.ROUND_HALF_DOWN) + "\t" + Round.getRound(dou2, 1, BigDecimal.ROUND_HALF_DOWN)); System.out.println("舍入模式ROUND_HALF_EVEN:\t" + Round.getRound(dou1, 1, BigDecimal.ROUND_HALF_EVEN) + "\t" + Round.getRound(dou2, 1, BigDecimal.ROUND_HALF_EVEN)); System.out.println("舍入模式ROUND_HALF_UP : \t" + Round.getRound(dou1, 1, BigDecimal.ROUND_HALF_UP) + "\t" + Round.getRound(dou2, 1, BigDecimal.ROUND_HALF_UP)); } }
发表评论
-
JDK_实例(求指定范围内的质数)
2009-11-20 14:15 844package book.arrayset; impor ... -
JDK_实例(使用Arrays)
2009-10-29 13:28 697package book.arrayset; impor ... -
JDK_实例(处理大数字)
2009-10-29 13:21 1035package book.number; import ... -
JDK_实例(生成随机数)
2009-10-29 13:20 1935package book.number; import ... -
JDK_实例(转换数字的进制)
2009-10-29 13:16 985package book.number; /** * ... -
JDK_实例(格式化数字)
2009-10-29 13:05 579package book.number; import ... -
JDK_实例(数字和数字封装类)
2009-10-29 13:02 711package book.number; /** * ... -
JDK_实例(Adapter 适配器模式)
2009-10-29 12:43 1493接口 package book.oo.sort; / ... -
JDK_实例(Factory工厂模式)
2009-10-29 12:39 837接口 package book.oo.factory; ... -
JDK_实例(Singleton单列模式)
2009-10-29 12:35 1024A package book.oo.singleton; ... -
JDK_实例(排序类)
2009-10-29 12:29 1047排序接口 package book.oo.sort; ... -
JDK_实例(方法与变量在继承时的覆盖和隐藏)
2009-10-29 12:24 782父类 package book.oo.cov ... -
JDK_实例(类的加载顺序)
2009-10-29 12:20 719父类 package book.oo.initorder; ... -
JDK_实例(自定义形状类)
2009-10-29 12:12 787长方形 package book.oo; ... -
JDK_实例(Java 参数传递)
2009-10-29 12:05 904package book.oo; public clas ... -
JDK_实例(复数类)
2009-10-29 11:52 846package book.oo; public clas ... -
JDK_实例(命令行程序)
2009-10-29 11:29 666package book.basic; public c ... -
JDK_实例(计算阶乘)
2009-10-29 11:28 698package book.basic; public c ... -
JDK_实例(控制程序流程)
2009-10-29 11:27 548package book.basic; public c ... -
JDK_实例(java 运算符)
2009-10-29 11:24 791package book.basic; public c ...
相关推荐
全部代码出自电子工业出版社夏先波的《Java JDK实例宝典》一书,本书以J2SE 5.0为开发环境,选取Java应用的典型实例,循序渐进地介绍了Java语言的各种开发方法和技巧,实例代码注释详细规范,思路清晰。 第1章 ...
实例43 数字的舍入 98 实例44 转换数字的进制 101 实例45 随机数 103 实例46 Java Applet绘制心形曲线 106 实例47 简单的计算器 107 实例48 日历和日期 118 实例49 Java编制的时钟 121 实例50 简单的日历 124...
- `Math.round()`方法用于四舍五入。 #### 数字格式化 Java提供了多种数字格式化的方式: 1. **十进制转二进制、八进制、十六进制:** ```java String binary = Integer.toBinaryString(10); String octal =...
`Math.round()`方法用于对数值进行四舍五入处理。 3. **数字格式化**: ```java NumberFormat nf = NumberFormat.getInstance(); String formattedNumber = nf.format(1234567.89); ``` `NumberFormat`类...
Math.round() 是 Java 中的数学函数,用于将数字四舍五入。 1.13 构造器是否可以被重写 构造器不能被重写,因为构造器是对象的初始化方法。 1.14 抽象类和接口的区别 抽象类和接口都是 Java 中的抽象类型,但...
Math.round(-15)等于-15,因为Math.round方法用于将double类型的数字四舍五入到最接近的整数。 6. String属于基础的数据类型吗? 不是。String是java的引用类型,它是一个类,而不是基础的数据类型。 7. java中...
在处理数据类型转换时,遵循转换规则,如整数类型可以自动转换为浮点类型,但可能会有舍入误差。字符可以提升为整数,因为字符在内存中也是以整数形式存储的Unicode值。 内存溢出问题通常发生在试图分配超出可用...
`Math.round()` 方法对数字进行四舍五入处理。对于负数 `-1.5`,`Math.round()` 的行为是将其加 `0.5` 后向下取整。因此,`Math.round(-1.5)` 的结果为 `-1`。 #### 5. String 是否属于基础数据类型 Java 中的基础...
该方法将浮点数四舍五入为最接近的整数。 16. **代码不妥之处**:没有提供具体代码,通常不妥之处可能涉及语法错误、逻辑错误、资源泄漏等问题。 17. **访问修饰符的区别**:public表示公共访问,任何地方都可以...
:-1,因为Math.round方法将数字四舍五入到最接近的整数。 6. String属于基础数据类型吗?:不属于,因为String是Java中的一个类。 7. Java中的字符串操作类有哪些?它们之间有什么区别?:String、StringBuilder、...
-1,因为 Math.round() 方法用于将数字四舍五入到最接近的整数。 知识点:Java 中的数学运算、Math 类的使用。 6. String 属于基础的数据类型吗?否,String 是一个对象类型,而不是基础数据类型。 知识点:Java 中...
- `Math.round()`方法用于对数字进行四舍五入处理。当参数为负数时,会向零的方向进行四舍五入。因此`Math.round(-1.5)`的结果为`-1`。 6. **`String`是否属于基础数据类型** - `String`不是基础数据类型,而是...
- **解析**:`Math.round()`函数用于四舍五入一个浮点数。对于正数,如`Math.round(11.5)`结果为12;对于负数,如`Math.round(-11.5)`结果为-11。这是因为`Math.round()`实际上是对输入值乘以2后进行`Math.floor()`...
对于小数点后第一位为5的情况,`Math.round`会向远离零的方向进行四舍五入。 #### 16. 下面的代码有什么不妥之处? - **答案**:由于问题中未给出具体的代码,无法直接指出其中的问题。请提供完整的代码示例以便...
- `Math.round(-11.5)`等于-11,同样遵循四舍五入的原则。 #### 面向对象的特征有哪些方面 - **封装**: 将数据和行为绑定在一起,隐藏内部细节,提供简洁的操作接口。 - **继承**: 子类可以继承父类的属性和方法,...
- `Math.round()`用于四舍五入,`Math.round(11.5)`的结果是12,`Math.round(-11.5)`的结果是-11。 3. **对象比较**: - `a==b`比较的是两个对象的内存地址,看它们是否指向同一个实例。 - `a.equals(b)`比较的...
`Math.round(11.5)`等于12,`Math.round(-11.5)`等于-11,遵循向远离零的方向舍入的规则。 ### 11. short类型变量运算的陷阱 `short s1 = 1; s1 = s1 + 1;`会导致编译错误,因为`s1 + 1`的结果默认为int类型,不能...