Java 读书笔记 (十一) Number & Math 类
所有的包装类(Integer、Long、Byte、Double、Float、Short)都是抽象类Number的子类。
这种由编译器特别支持的包装称为装箱,所以当内置数据类型被当作对象使用的时候,编译器会把内置类型装箱为包装类。相似的,编译器也可以把一个对象拆箱为内置类型。Number类属于java.lang包。 //这段没看懂
实例:
public class Test{
public static void main(String args[]){
Integer x=5;
x=x+10;
System.out.println(x);
}
}
当x被赋为整型值时,由于x是一个对象,所以编译器要对x进行装箱。然后,为了使x能进行加运算,所以要对x进行拆箱。
/* java 中的自动装箱与拆箱: 装箱就是自动将基本数据类型转换为包装器类型; 拆箱就是自动将包装器类型转换为基本数据类型。
*/ public class Number{
public static void main(String[]args){
/*
Integer i1=128; //装箱,相当于Integer.valueOf(128);
int t=i1; //相当于i1.intValue()拆箱
System.out.println(t);
*/ /*
对于-128到127(默认是127)之间的值,被装箱后,会被放在内存里进行重用,但是如果超出了这个值,系统会重新new一个对象
*/
Integer i1=200;
Integer i2=200; /*
注意==与equals的区别
== 它比较的是对象的地址
equals 比较的是对象的内容
*/ if(i1==i2){
System.out.println("true");
} else {
System.out.println("false");
}
}
}
Java Math 类
Java的Math包含了用于执行基本数学运算的属性和方法,如初等指数、对数、平方根和三角函数。
Math的方法都被定义为static形式,通过Math类可以在主函数中直接调用。
public class Test{
public static void main(String[]args)
{
System.out.println("90度的正弦值: "+Math.sin(Math.PI/2));
System.out.println("0度的余弦值: "+Math.cos(0);
System.out.println("60度的正切值: "+Math.tan(Math.PI/3));
System.out.println("1的反正切值: "+Math.atan(1));
System.out.println("π/2的角度值: "+Math.toDegrees(Math.PI/2));
System.out.println(Math.PI);
}
} /* 执行结果:
90度的正弦值:1.0
0度的余弦值:1.0
60度的正切值: 1.7320508075688767
1的反正切值: 0.7853981633974483
π/2的角度值: 90.0
3.141592653589793
*/
Java 读书笔记 (十一) Number & Math 类的更多相关文章
- Java学习笔记26(Math类、Arrays类、BigInteger类、BigDecimal类)
Math类:数学工具类,做一些数学计算,开方,对数,三角函数等 所有方法都是静态方法,不需要建立对象,直接用类名调用即可 示例: 这里写几个在日常开发中会用到的,比如三角函数之类的平时不会用到,了解即 ...
- [Effective Java 读书笔记] 第三章类和接口 第二十-二十一条
第二十条 用函数对象表示策略 函数指针(JAVA的函数指针,是指使用对象的引用来作为参数,传递给另一个对象的方法)主要用来实现策略模式,为了在JAVA中实现这种模式,要申明一个接口来表示该策略,并为每 ...
- Java 读书笔记 (二) 对象和类
Java 作为一种面向对象语言,支持以下基本概念: 多态 继承 封闭 抽象 类 对象 实例 方法 重载 对象: 是类的一个实例,有状态和行为.以人为例,黄种人.白种人.黑种人为类,每一个具体的人为类的 ...
- [Effective Java 读书笔记] 第三章类和接口 第十三 -- 十四条
第十三条 使类和成员的可访问性最小化 总得来说,我们应该尽量将成员的访问范围限制到最小!有利于解耦,开发.测试和优化都能够更加独立. 对于成员(域,方法,嵌套类和嵌套接口),有四种可能的访问级别,访问 ...
- [Effective Java 读书笔记] 第三章类和接口 第二十三-- ??条
第二十三条 请不要再新代码中使用原生态类型 1 使用原生态类型,就失去了泛型在安全性和表述性方面的所有优势,所以新代码中不要使用原生态类型 2 List<String>可以传递给List作 ...
- [Effective Java 读书笔记] 第三章类和接口 第十八--十九条
十八条 接口优于抽象类 接口的特点: 1.一个类可以实现多个接口,不能继承多个类(抽象类) 2.接口不能有具体的方法实现,只定义标准类型 骨架类: 即实现一个abstract类来实现接口,提供给其他类 ...
- [Effective Java 读书笔记] 第三章类和接口 第十六条
第十六条 复合优先于继承 如果不确定B和A的关系是,is-a的关系,B确实也是A,那么久不应该使用B继承A,否则会暴露实现细节, 你的实现都会限制在原始的实现上. 书中举的第一个例子,实现了一个类ex ...
- 吴裕雄--天生自然 JAVA开发学习:Number & Math 类
int a = 5000; float b = 13.65f; byte c = 0x4a; public class Test{ public static void main(String arg ...
- Java基础(四):Java Number & Math 类、Character 类、String 类、StringBuffer & StringBuilder 类
一.Java Number & Math 类: 1.Number类: 一般地,当需要使用数字的时候,我们通常使用内置数据类型,如:byte.int.long.double 等.然而,在实际开发 ...
随机推荐
- SharePoint 2010 -- Silverlight托管客户端模型简单示例
Silverlight托管客户端模型,是SharePoint2010推出的三种客户端模型".NET托管"."ECMAScript"."Sliverli ...
- 图像处理程序框架—MFC相关知识点
CDC:Windows使用与设备无关的图形设备环境(DC :Device Context) 进行显示 . MFC基础类库定义了设备环境对象类----CDC类. CDC与CGdiObject的关系 说道 ...
- LeetCode(36)- Implement Stack using Queues
题目: Implement the following operations of a stack using queues. push(x) -- Push element x onto stack ...
- 对DB2常见错误的列举以及破解方案
我们今天主要描述的是DB2常见错误还有正对这些错误的解决方案,以下就是文章对DB2常见错误还有正对这些错误的解决方案的主要内容的详细描述. 以下的文章主要是介绍DB2常见错误还有正对这些错误的解决方案 ...
- git如何移除某文件夹的版本控制
目录结构如下 project bin lib src ...... 执行如下的操作 git add . git commit -m "add bin/ lib/ src/" git ...
- cbp2make使用
codeblock中的cbp2make插件能自动生成makefile文件,这里介绍一下从安装到使用到的过程. 首先下载cbp2make,下载的包后缀名是.tar.gz.Linux里双击该下载文件,解压 ...
- git常用笔记整理
Git 什么是Git 初始化 guthub创建sshKey 下载 上传 更新 创建切换分支 删除分支 合并分支 查看命令历史|提交历史 撤回 设置用户名和密码 查看配置信息 强制pull 强制push ...
- gradle 将依赖打入Jar包的方法
使用的是IDEA,直接引入 plugins { id 'com.github.johnrengelman.shadow' version '1.2.3' } 放在build.gradle的最上面,然后 ...
- DevOps之一 Gitlab的安装与配置
gitlab的安装 参考治疗:https://www.gitlab.com.cn/installation/#centos-7 http://www.21yunwei.com/archives/435 ...
- ArcCore重构-Makefile模块化
基于官方arc-stable-9c57d86f66be,AUTOSAR版本3.1.5 基本问题 2. 编译系统中代码文件是否编译及目标文件集中定义在boards/board_common.mk,而 ...