Java中的数字
以下内容引用自http://wiki.jikexueyuan.com/project/java/numbers.html:
通常情况下,当处理数字时,使用原始数据类型,如byte,int,long,double等。
示例:
int i = 5000;
float gpa = 13.65;
byte mask = 0xaf;
然而,在开发中,会遇到需要使用对象而不是原始数据类型的情况。为了实现这个,Java为每个原始数据类型提供包装类。
所有的包装类 (Integer,Long,Byte,Double,Float,Short) 是抽象类Number的子类。

这种包装是由编译器处理,这个过程称为装箱。因此,当一个原始数据类型被使用,当需要一个对象时,编译器将原始数据放入其包装类。同样地,编译器也能将对象取出返回到原始数据类型。Number是java.lang包的一部分。
这里是装箱和拆箱的一个例子:
public class Test{
public static void main(String args[]){
Integer x = 5; // boxes int to an Integer object
x = x + 10; // unboxes the Integer to a int
System.out.println(x);
}
}
//这将产生以下结果:
15
当x被分配整数值,则编译器将整数放入箱中,因为x为整数对象。然后,x被拆箱,以便它们可以被添加为整数。
Number方法
以下是对Number类实现的所有子类中实现的实例方法的列表:
| 方法 | 描述 |
|---|---|
| xxxValue() | 这个Number对象的值转换为XXX的数据类型并返回 |
| compareTo() | 把这个Number对象与参数做比较 |
| equals() | 确定这个数字对象是否等于参数 |
| valueOf() | 返回一个Integer对象持有指定的原始值 |
| toString() | 返回表示指定的int或整数的值的String对象 |
| parseInt() | 此方法用于获取某个字符串的原始数据类型 |
| abs() | 返回参数的绝对值 |
| ceil() | 返回的最小整数大于或等于该参数。返回为double |
| floor() | 返回的最大整数小于或等于该参数。返回为double |
| rint() | 返回的整数,它是最接近值该参数值。返回为double |
| round() | 返回最接近的long或者int,通过该方法的返回类型所指参数 |
| min() | 返回两个参数中较小的 |
| max() | 返回两个参数中较大的 |
| exp() | 返回自然对数的底数e,该参数的幂值 |
| log() | 返回参数的自然对数 |
| pow() | 返回第一个参数的提高至第二个参数的幂值 |
| sqrt() | 返回参数的平方根 |
| sin() | 返回指定的double值的正弦值 |
| cos() | 返回指定的double值的余弦值 |
| tan() | 返回指定的double值的正切值 |
| asin() | 返回指定的double值的反正弦 |
| acos() | 返回指定的double值的反余弦值 |
| atan() | 返回指定的double值的反正切值 |
| atan2() | 将直角坐标(x,y)转换为极坐标(r,θ)并返回θ |
| toDegrees() | 将参数转换为度 |
| toRadians() | 将参数转换为弧度 |
| random() | 返回一个随机数 |
测试工程:https://github.com/easonjim/5_java_example/tree/master/javabasicstest/test7
Java中的数字的更多相关文章
- JAVA中的数字运算+号与字符串+号
(1)当“+”两边是非数值类型,“+”就被看作连接符. (2)当“+”两边都是数值类型,“+”就被看作算术运算中的加号. (3)当“+”一边是非数值,一边是数值类型,“+”就被看作连接符.
- Java中在数字前自动补零方法
/** * 数字前面自动补零 * @param number 数字 * @return */ public static String geFourNumber(int number){ Number ...
- oralce不像Java,java中字符串+数字,能够得到结果字符串
oracle得到的两个字段进行相加,要求都是number类型的,如果两个是字符串会自动转成number类型(前提是能够转) select a+b from (select '1' a,'2' b fr ...
- 解决java中按照数字大小来排序文件
我们想要输出(1.jpg.2.jpg.3.jpg.10.jpg.11.jpg.20.jpg.21.jpg.31.jpg) 突然看到网上一些写法 总结:既然自己按照定义的文件名规则来处理,也可以进行使用 ...
- Java中过滤出字母、数字和中文的正则表达式
1.Java中过滤出字母.数字和中文的正则表达式 (1)过滤出字母的正则表达式 [^(A-Za-z)] (2)过滤出数字的正则表达式 [^(0-9)] (3)过滤出中文的正则表达式 [^(\\u4e0 ...
- AJPFX总结关于Java中过滤出字母、数字和中文的正则表达式
1.Java中过滤出字母.数字和中文的正则表达式 (1)过滤出字母的正则表达式 [^(A-Za-z)] (2) 过滤出 数字 的正则表达式 [^(0-9)] (3) 过滤出 中文 的正则 ...
- Java中的数是用补码表示的检验
一.基本介绍(关于下列五个定义来自http://www.cnblogs.com/zhangziqiu/archive/2011/03/30/ComputerCode.html#!comments,谢原 ...
- java中封装类(二)
java中的数字类型包括 Byte,Short,Integer,Long,Float,Double.其中前四个是整数,后两个是浮点数. 在说java中数字类型之前先来看看它们统一的基类Number. ...
- java中变量使用的总结
java中整数默认为int,小数默认为double. float n5=1.3; 这个句子就会报错,应该修改成这样float n5=1.3f; 八大基本类型 变量类型 位数 范围 备注 Byte 8位 ...
随机推荐
- SEO 第三章
SEO第三章 本次课目标: 1. 掌握关键词的选取方法 2. 掌握关键词的竞争强度分析 3. 掌握关键词的拓展方法 一.关键词的选取 选择关键词的时候可以根据公司网站的定位,围绕公司的主营产品或 ...
- (转)编写Spring的第一个案例并测试Spring的开发环境
http://blog.csdn.net/yerenyuan_pku/article/details/52832145 Spring4.2.5的开发环境搭建好了之后,我们来编写Spring的第一个案例 ...
- CAD交互绘制圆弧(网页版)
在CAD设计时,需要绘制圆弧,用户可以在图面点圆弧起点,圆弧上的一点和圆弧的终点,这样就绘制出圆弧. 主要用到函数说明: _DMxDrawX::DrawArc2 由圆弧上的三点绘制一个圆弧.详细说明如 ...
- 1.入手树莓派之linux环境搭建
最近刚刚买了一款 树莓派3代B型 raspberrypi 板载蓝牙和WIFI 英国版本,没玩过,觉得很好奇,生怕记性不好哈,把自己玩的过程记录一下,以备不时之需: 需要材料: 1) 树莓派: 2)sd ...
- Ubuntu16.04下安装pip
按照下面的步骤来安装 sudo apt-get install python-setuptools python-dev build-essential 安装python2的pip (要想好你用p ...
- 树莓派 - MQTT
安装mosquitto 下载源代码包 wget http://mosquitto.org/files/source/mosquitto-1.5.tar.gz 解压 tar zxfv mosquitto ...
- 使用 ES (elasticsearch) 搜索中文
1.创建索引 curl -XPUT http://172.16.125.139:9200/ques2.创建索引类型 curl -XPOST http://172.16.125.139:9200/que ...
- LeetCode (32) Longest Valid Parentheses
题目 Given a string containing just the characters '(' and ')', find the length of the longest valid ( ...
- 《算法导论》— Chapter 15 动态规划
序 算法导论一书的第四部分-高级设计和分析技术从本章开始讨论,主要分析高效算法的三种重要技术:动态规划.贪心算法以及平摊分析三种. 首先,本章讨论动态规划,它是通过组合子问题的解而解决整个问题的,通常 ...
- luogu3157 [CQOI2011]动态逆序对
先算出一个点前头比它大和后头比它小的数量. 每次删点就扔进一个主席树里头,防止造成重复删答案. #include <iostream> #include <cstring> # ...