Math.round(11.5)等于多少? Math.round(-11.5)等于多少?
1.先说下怎么理解
round()方法可以这样理解:
将括号内的数+0.5之后,向下取值,
比如:round(3.4)就是3.4+0.5=3.9,向下取值是3,所以round(3.4)=3;
round(-10.5)就是-10.5+0.5=-10,向下取值就是-10,所以round(-10.5)=-10
所以,Math.round(11.5)=12;
现在再来看,Math.round(11.5),Math.round(-11.5)你应该知道等于多少了吧,掌握了方法就好解决问题了。
这个题面试了很多家就一家遇到,所以就来和大家分享下。
扩展:常用的三个
Math.ceil求最小的整数,但不小于本身.
ceil的英文意义是天花板,该方法就表示向上取整,
例子:
所以,Math.ceil(11.3)的结果为12,Math.ceil(-11.3)的结果是-11;
- /**
- * @see 求最小的整数,但不小于本身
- * @param double
- * @return double
- */
- System.out.println(Math.ceil(-1.1));
- System.out.println(Math.ceil(-1.9));
- System.out.println(Math.ceil(1.1));
- System.out.println(Math.ceil(1.9));
输出结果:
- -1.0
- -1.0
- 2.0
- 2.0
Math.floor求最大的整数,但不大于本身.
floor的英文意义是地板,该方法就表示向下取整,
例子:
floor的英文意义是地板,该方法就表示向下取整,
所以,Math.floor(11.6)的结果为11,Math.floor(-11.6)的结果是-12;
- /**
- * @see 求最大的整数,但不大于本身
- * @param double
- * @return double
- */
- System.out.println(Math.floor(-1.1));
- System.out.println(Math.floor(-1.9));
- System.out.println(Math.floor(1.1));
- System.out.println(Math.floor(1.9));
输出结果:
- -2.0
- -2.0
- 1.0
- 1.0
Math.round求本身的四舍五入.
- /**
- * @see 本身的四舍五入
- * @param double
- * @return long
- */
- System.out.println(Math.round(-1.1));
- System.out.println(Math.round(-1.9));
- System.out.println(Math.round(1.1));
- System.out.println(Math.round(1.9));
输出结果:
- -1
- -2
- 1
- 2
Math.abs求本身的绝对值.
- /**
- * @see 本身的绝对值
- * @param double|float|int|long
- * @return double|float|int|long
- */
- System.out.println(Math.abs(1.1));
- System.out.println(Math.abs(1.9));
- System.out.println(Math.abs(-1.1));
- System.out.println(Math.abs(-1.9));
输出结果:
- 1.1
- 1.9
- 1.1
- 1.9
Math.max与Math.min,比较两个数的最大值,最小值
- /**
- * @see 比较两个数的最大值,最小值
- * @param double|float|int|long
- * @return double|float|int|long
- */
- System.out.println(Math.max(1.0, 2.0));
- System.out.println(Math.min(-1.0, -2.0));
输出结果:
- 2.0
- -2.0
返回一个与第二个参数相同的标志(正负号)的值
- /**
- * @see 返回一个与第二个参数相同的标志(正负号)的值
- * @param double|float
- * @return double|float
- */
- System.out.println(Math.copySign(-1.9, 2.9));
- System.out.println(Math.copySign(1.9, -2.9));
- System.out.println(Math.copySign(0.0, 2.9));
- System.out.println(Math.copySign(0.0, -2.9));
输出结果:
- 1.9
- -1.9
- 0.0
- -0.0
Math
类的常用方法
封装了一些基本运算方法,包括进行三角运算的正弦、余弦、正切、余切相关的方法:
例如,求正弦的
sin
,求余弦的
cos
等,如果使用的话可以参考
JDK
。
下面的方法可能是我们经常要使用的:
(
1
)求最大值,可以用于求
int
类型,
long
类型,
float
类型,
double
类型的最大值,
下面仅仅下求整数最大值的方法的定义:
public static int max(int a,int b);
(
2
)求最小值,和求最大值基本相同。
public static int min(int a,int b);
(
3
)求绝对值,和求最大值的方法基本相同。
public static int abs(int a)
(
4
)四舍五入的方法
public static int round(float a)
public static long round(double d)
(
5
)计算幂
public static double pow(double a,double b)
(
6
)求下限值
public static double floor(double d)
(
7
)求上限值
public static double ceil(double d)
(
8
)求平方根
public static double sqrt(double d)
下面的例子包含了上面的
8
个方法:
double
d1
=
5.7;
double
d2
=
12.3;
double d3 = -5;
System.out.println(d1+"
和
"+d2+"
的最大值为:
"+Math.max(d1,d2));
System.out.println(d1+"
和
"+d2+"
的最小值为:
"+Math.min(d1,d2));
System.out.println(d3+"
的绝对值为:
"+Math.abs(d3));
System.out.println(d2+"
四舍五入之后为:
"+Math.round(d2));
System.out.println(d2+"
的
2
次幂为:
"+Math.pow(d2,2));
System.out.println(d2+"
的下限为:
"+Math.floor(d2));
System.out.println(d2+"
的上限为:
"+Math.ceil(d2));
System.out.println(d2+"
的平方根为:
"+Math.sqrt(d2));
运行结果为:
5.7
和
12.3
的最大值为:
12.3
5.7
和
12.3
的最小值为:
5.7
-5.0
的绝对值为:
5.0
12.3
四舍五入之后为:
12
12.3
的
2
次幂为:
151.29000000000002
12.3
的下限为:
12.0
12.3
的上限为:
13.0
12.3
的平方根为:
3.5071355833500366
(
9
)要获取一个随机数,如果是
0
到
1
之间的随机数,可以直接使用下面的方法:
public static double random();
如果希望得到某个范围的随机数,例如
60
到
100
,可以这样处理:
int
min=60;
int
max=100;
int
random;
random = min + (int) ( (max - min) * (Math.random()));
Math.round(11.5)等于多少? Math.round(-11.5)等于多少?的更多相关文章
- Oracle_RAC数据库GI的PSU升级(11.2.0.4.0到11.2.0.4.8)
Oracle_RAC数据库GI的PSU升级(11.2.0.4.0到11.2.0.4.8) 本次演示为升级oracle rac数据库,用GI的psu升级,从11.2.0.4.0升级到11.2.0.4.8 ...
- 【C++11】30分钟了解C++11新特性
作者:王选易,出处:http://www.cnblogs.com/neverdie/ 欢迎转载,也请保留这段声明.如果你喜欢这篇文章,请点[推荐].谢谢! 什么是C++11 C++11是曾经被叫做C+ ...
- PSU 离11.2.0.3.0 -> 11.2.0.3.11 如果解决冲突的整个
Oracle rdbms 扑灭psu离11.2.0.3.0升级到11.2.0.3.11 参考patch :18522512 停止应用,停止听音乐并DB,将db的oracle_home在下面OPatch ...
- 设正整数n的十进制表示为n=ak……a1a0(0<=ai<=9,0<=i<=k,ak!=0),n的个位为起始数字的数字的正负交错之和T(n)=a0+a1+……+(-1)kak,证明:11|n的充分必要条件是11|T(n);(整除理论1.1.2))
设正整数n的十进制表示为n=ak……a1a0(0<=ai<=9,0<=i<=k,ak!=0),n的个位为起始数字的数字的正负交错之和T(n)=a0+a1+……+(-1)kak, ...
- AIX 7.1 RAC 11.2.0.4.0升级至11.2.0.4.6(一个patch跑了3个小时)
1.环境 DB:两节点RAC 11.2.0.4.0升级至11.2.0.4.6 OS:AIX 7.1(205G内存 16C) 2.节点1.节点2(未建库) 2.1.patch 20420937居然用了3 ...
- 下面程序的输出结果是____ A:11,10 B:11,11 C:10,10 D:10,11 int x=10; int y=x++; printf("%d,%d",(x++,y),y++);
下面程序的输出结果是____ A:11,10 B:11,11 C:10,10 D:10,11 int x=10; int y=x++; printf("%d,%d",(x++,y) ...
- Transaction Check Error:file /usr/libexec/getconf/default conflicts between attempted installs of gcc-6.4.1-1.fc25.i686 and gcc-6.4.1-1.fc25.x86_64
今天在我的ubuntu系统上使用yum来安装软件时出错了错误:Transaction Check Error:file /usr/libexec/getconf/default conflicts b ...
- 【ERROR】while loading shared libraries: /u01/app/oracle/product/11.2.0/lib/libclntsh.so.11.1: cannot
问题: [oracle@mydb]$ lsnrctl status lsnrctl: error while loading shared libraries: /u01/app/oracle/pro ...
- lsnrctl: error while loading shared libraries: /opt/app/oracle/product/11.2/db_1/lib/libclntsh.so.11
错误描述: 安装好数据库后,在oralce用户下敲入 查看监听状态命令,返回错误提示 [oracle@centos3 ~]$ lsnrctl statuslsnrctl: error while lo ...
- Downgrade ASM DATABASE_COMPATIBILITY (from 11.2.0.4.0 to 11.2.0.0.0) on 12C CRS stack.
使用Onecommand完成快速Oracle 12c RAC部署后 发现ASM database compatibilty无法设置,默认为11.2.0.4.0. 由于我们还有些数据库低于这个版本,所以 ...
随机推荐
- 编译原理-NFA构造DFA
本题摘自北邮的编译原理与技术. 首先,根据此图构造状态转换表 表中第一列第一行表示从第一个符号B通过任意个空转换能到达的节点,Ia表示由此行的状态数组({B,5,1}可以看作0状态)经过一个a可以到达 ...
- 跟我一起读postgresql源码(十五)——Executor(查询执行模块之——control节点(上))
控制节点 控制节点用于完成一些特殊的流程执行方式.由于PostgreSQL为査询语句生成二叉树状的査询计划,其中大部分节点的执行过程需要两个以内的输入和一个输出.但有一些特殊的功能为了优化的需要,会含 ...
- poj 1423 打表/斯特林公式
对于n位数的计算,我们可以采用(int)log10(n) + 1的方法得到n的位数 第一种方法: 对于n!位数的计算,log10(n!) = log10(1) + log10(2) + ... + l ...
- Eclipse去掉对JS文件的Validation
Eclipse不去掉对JS文件的Validation,编译时会花费很长的时间,有时甚至会导致编译失败. 可以按照如下的方式去掉对JS文件的Validation. 一.window->prefer ...
- BZOJ 4503: 两个串 [FFT]
4503: 两个串 题意:兔子们在玩两个串的游戏.给定两个只含小写字母的字符串S和T,兔子们想知道T在S中出现了几次, 分别在哪些位置出现.注意T中可能有"?"字符,这个字符可以匹 ...
- BZOJ 2844: albus就是要第一个出场 [高斯消元XOR 线性基]
2844: albus就是要第一个出场 题意:给定一个n个数的集合S和一个数x,求x在S的$2^n$个子集从小到大的异或和序列中最早出现的位置 一开始看错题了...人家要求的是x第一次出现位置不是第x ...
- POJ1509 Glass Beads [后缀自动机]
题意: 给一个字符串S,每次可以将它的第一个字符移到最后面,求这样能得到的字典序最小的字符串.输出开始下标 练习SAM第一题! SS构造SAM,然后从开始尽量走最小走n步就可以啦 什么?开始位置?!R ...
- 如何使用 scikit-learn 为机器学习准备文本数据
欢迎大家前往云+社区,获取更多腾讯海量技术实践干货哦~ 文本数据需要特殊处理,然后才能开始将其用于预测建模. 我们需要解析文本,以删除被称为标记化的单词.然后,这些词还需要被编码为整型或浮点型,以用作 ...
- 2018/1/28 RocketMq学习笔记
RocketMq是支持Topic模式的MQ中间件,它的传输格式为topic(主题,一个product对应一个主题,),Tag(标签,其实就是副标题,是为了更好的支持集群模式而出现的,这样客户端可以指定 ...
- flex 布局 input 宽度不自适应
flex 布局 input 宽度不自适应 解决方法: 给 input 加上min-height 解决!