1.关于取整运算
private static void getInt() { double i=2, j=2.1, k=2.5, m=2.9; System.out.println("------------------取整-------------------"); System.out.println("舍掉小数取整:Math.floor(2)=" + (int)Math.floor(i)); System.out.println("舍掉小数取整:Math.floor(2.1)=" + (int)Math.floor(j)); System.out.println("舍掉小数取整:Math.floor(2.5)=" + (int)Math.floor(k)); System.out.println("舍掉小数取整:Math.floor(2.9)=" + (int)Math.floor(m)); System.out.println("舍掉小数取整:Math.floor(-2)=" + (int)Math.floor(-i)); System.out.println("舍掉小数取整:Math.floor(-2.1)=" + (int)Math.floor(-j)); System.out.println("舍掉小数取整:Math.floor(-2.5)=" + (int)Math.floor(-k)); System.out.println("舍掉小数取整:Math.floor(-2.9)=" + (int)Math.floor(-m)); System.out.println("------------------凑整-------------------"); System.out.println("凑整:Math.ceil(2)=" + (int)Math.ceil(i)); System.out.println("凑整:Math.ceil(2.1)=" + (int)Math.ceil(j)); System.out.println("凑整:Math.ceil(2.5)=" + (int)Math.ceil(k)); System.out.println("凑整:Math.ceil(2.9)=" + (int)Math.ceil(m)); System.out.println("------------------四舍五入取整-------------"); System.out.println("四舍五入取整:(2)=" + new BigDecimal("2").setScale(0, BigDecimal.ROUND_HALF_UP)); System.out.println("四舍五入取整:(2.1)=" + new BigDecimal("2.1").setScale(0, BigDecimal.ROUND_HALF_UP)); System.out.println("四舍五入取整:(2.5)=" + new BigDecimal("2.5").setScale(0, BigDecimal.ROUND_HALF_UP)); System.out.println("四舍五入取整:(2.9)=" + new BigDecimal("2.9").setScale(0, BigDecimal.ROUND_HALF_UP)); }
结果:
------------------取整------------------- 舍掉小数取整:Math.floor(2)=2 舍掉小数取整:Math.floor(2.1)=2 舍掉小数取整:Math.floor(2.5)=2 舍掉小数取整:Math.floor(2.9)=2 舍掉小数取整:Math.floor(-2)=-2 舍掉小数取整:Math.floor(-2.1)=-3 舍掉小数取整:Math.floor(-2.5)=-3 舍掉小数取整:Math.floor(-2.9)=-3 ------------------凑整------------------- 凑整:Math.ceil(2)=2 凑整:Math.ceil(2.1)=3 凑整:Math.ceil(2.5)=3 凑整:Math.ceil(2.9)=3 ------------------四舍五入取整------------- 四舍五入取整:(2)=2 四舍五入取整:(2.1)=2 四舍五入取整:(2.5)=3 四舍五入取整:(2.9)=3
注意BigDecimal构造方法:
public BigDecimal(double 将 double 转换为 BigDecimal,后者是 double 的二进制浮点值准确的十进制表示形式。返回的 BigDecimal 的标度是使 (10scale × val) 为整数的最小值
- 此构造方法的结果有一定的不可预知性。有人可能认为在 Java 中写入 new BigDecimal(0.1) 所创建的 BigDecimal 正好等于 0.1(非标度值 1,其标度为 1),但是它实际上等于 0.1000000000000000055511151231257827021181583404541015625。这是因为 0.1 无法准确地表示为 double(或者说对于该情况,不能表示为任何有限长度的二进制小数)。这样,传入 到构造方法的值不会正好等于 0.1(虽然表面上等于该值)。
- 另一方面,String 构造方法是完全可预知的:写入 new BigDecimal("0.1") 将创建一个 BigDecimal,它正好 等于预期的 0.1。因此,比较而言,通常建议优先使用String 构造方法。当 double 必须用作 BigDecimal 的源时,请注意,此构造方法提供了一个准确转换;它不提供与以下操作相同的结果:先使用 Double.toString(double) 方法,然后使用 BigDecimal(String) 构造方法,将 double 转换为 String。要获取该结果,请使用 static valueOf(double) 方法。
相关推荐
在Java编程语言中,寻找数组中的最小数是一项基础但...总的来说,寻找最小数是Java基础编程中的一项基本技能,它涉及到数组操作、条件判断和循环控制等核心概念。熟练掌握这些技巧将有助于理解和解决更复杂的编程问题。
在JAVA编程中,处理数值运算是一项...通过理解并灵活运用这些方法,我们可以有效地解决大数值的取整、取小数、保留小数位以及计算自幂数等问题。在实际编程中,应根据具体需求选择合适的方法,确保代码的效率和可读性。
标题中提及的“Java基础之Java编程基础”表明,我们要探讨的是一些关于Java编程的初级知识点。Java作为一种广泛使用的编程语言,其基础语法是任何学习Java的开发者都必须掌握的。 描述部分指出,本节内容将围绕Java...
### Java基础复习知识点详解 #### 开发中的注意事项 在Java编程初期,经常会出现一些常见的错误,比如找不到文件、单词拼写错误、括号不匹配以及中英文混淆等问题。这些问题虽然简单,但却是初学者最易犯的错误。 ...
"北大青鸟内部JAVA基础测试题" 本测试题目涵盖了 Java 基础知识的多个方面,包括基本数据类型、变量声明、数组、运算符、控制结构、方法、字符串等。下面是对每个问题的详细解释: 1. 在 Java 语言中,基本数据...
标题“java基础知识点.pdf”指出了本文件是一份关于Java语言基础知识点的总结性文档。文档描述中提到,“java面向对象技术,基础知识点总结,都是日常自己学习中总结出来的”,说明文档内容涉及面向对象编程的基础...
Java是一种广泛使用的面向对象的编程语言,其基础知识是学习Java编程的基石。本文将深入探讨Java的基础知识,包括基本数据类型、String类以及基础数据类型的包装类。 首先,Java的基本数据类型是编程中最基础的元素...
Java编程语言的基础语法中,函数(也称方法)是一个至关重要的概念。函数是类中定义的、具有特定功能的一段独立可执行的代码块。它能够封装特定的操作,便于重复使用,提高代码的复用性和模块化。函数的定义通常包括...
### Java基础之运算符 #### 一、概述 在Java编程语言中,运算符是一种特殊类型的符号,用于执行特定的计算或操作。本文档详细介绍了Java中的各种运算符及其使用方式,包括但不限于赋值运算符、算术运算符、比较...
### Java基础知识面试题目详解 #### 一、Java基础知识 **1. Java基本数据类型与String** Java中的基本数据类型包括整数类型(`byte`, `short`, `int`, `long`),浮点类型(`float`, `double`),字符类型(`char...
Java基础之Random随机数 Java中的随机数使用率非常高,因此掌握随机数的使用是非常重要的。在Java中,Random类提供了产生随机数的方法,下面将详细介绍Random类的使用。 Random类的使用 Random类是Java中生成...
Java 基础语法知识点总结 本资源摘要信息涵盖了 Java 基础语法的主要知识点,从基本的 Java 程序结构到标识符、关键字、数据类型等方面。以下是该资源的知识点总结: 一、Java 基础语法 * Java 基础语法是 Java ...
如何在JAVA程序中保留两为小数,在程序设计中处理数学运算的规则的时候有时要求保留多少位小数的问题,本资源就针对这个问题
本篇将深入讲解Java的基础语法,包括关键字、标识符、注释、常量和变量、运算符、语句、函数以及数组。 首先,Java语言的关键字是被语言本身预定义并具有特殊含义的单词,它们全都是小写的。例如,`class`用于定义...
本教程将引导你快速掌握Java的基础知识,包括基本概念、编程思想以及关键语法元素。 首先,我们来了解一下Java中的基本数据类型。Java有八种基本数据类型,分为两大类:整型和浮点型。整型包括byte(1字节),short...
在探讨Java基础,特别是J2SE部分时,我们首先需要理解Java的几个核心概念。Java是一种面向对象的编程语言,其设计哲学强调“一次编写,到处运行”。Java语言发展至今,可分为几个部分,如J2SE、J2EE和J2ME。J2SE是...
【Java基础概述】 Java是一种广泛使用的编程语言,尤其适合初学者和有一定基础的学习者。它的基础知识涵盖了许多方面,包括语言的概述、环境搭建、语法、内存管理等。 1.1 Java语言平台版本 Java分为三个主要的...
### Java基础语法详解 #### 一、关键字(Keywords) Java 中的关键字均为小写形式,它们具有特定的含义,用于定义语句结构。在学习Java的过程中,我们会不断接触到这些关键字。例如,`instanceof` 是一个关键字,它...
实验2 "Java语言程序设计...通过这个实验,学习者可以增强对Java语言的理解,巩固编程基础,提升问题解决能力。同时,实验的结果分析和源代码编写是提升编程实践能力的关键步骤,有助于培养良好的编程习惯和调试技巧。