知识回顾(一):Java八大基础类型、四大引用类型
2017-12-09 17:36
531 查看
一、Java一共有八大基础类型
分为三类:整型(byte,int,short,long,float,double),字符型(char),布尔型(boolean)。
注意:字符串String不在java的基础类型里面,它是java的引用类型基本数据类型 | 对应的包装类 |
---|---|
byte(内存8位,无符号位时最大存储255,表数范围:-128~127) | Byte |
short(内存16位,无符号位时最大存储65536,表数范围:-32768~32767) | Short |
int(内存32位,无符号位时最大存储(2^32)-1,表数范围:-2^31~(2^31)-1) | Integer |
long(内存64位,无符号位时最大存储(2^64)-1,表数范围:-2^61~(2^61)-1) | Long |
float(内存32位,数据范围在2^-149~(2^128)-1,直接赋值时必须在数字后加上f或F) | Float |
double(内存64位,数据范围在2^-1074~(2^1024)-1,赋值时可以加d或D也可以不加) | Double |
char(内存16位,存储Unicode字符集,用单引号赋值,因为有ASCLL码对应值,可以参与加减乘除运算和比较大小) | Character |
boolean(数值只有true和false,不能用0代替;其他数值类型不能转换成boolean) | Boolean |
装箱是指由基本数据类型向对应的包装类型转换。例如,int包装成Integer类的对象。
拆箱是指有包装类转换成基本数据类型。例如,把Integer类的对象简化成int。
常见包装类应用(手动装箱与拆箱)
1、实现int和Integer相互转换
Integer类通过构造方法将int装箱,通过intValue()方法进行拆箱。
int n = 1; Integer m = new Interger(n);//手动装箱 int n = m.intValue();//手动拆箱(typeVale)
2、自动装箱与拆箱
Java 1.5之后,Java支持自动装箱和拆箱
int n = 1; Integer m = n;//自动装箱 int a = m;//自动拆箱
包装类的优势
1、带有将基本数据类型作为参数的构造函数
2、typeValue()方法
3、parseType(String str)方法,将字符串转化为基本值,静态方法
4、toString()方法,生成对应字符串
5、hashCode()方法,生成哈希码
6、equals()方法,对同一类的两个对象进行比较
二、四大引用类型
引用类型分为:数组,类,接口,字符串。数组:其实就是一个容器,存储同一种数据类型的集合;如 int[] a = {1,2,3,4}
类:对象是对事物的抽象,而类是对对象的抽象和归纳;如 public class Person{ ......}
接口:使用interface来定义一个接口,只能定义方法,不能有方法的实现;如public
interface personImpl{......}
字符串:是存放数据区(静态区)以Unicode编码的字符集合,如 String
a="你好"
基本类型与引用类型的区别:
(1)基本数据类型传值,对形参的修改不会影响实参;
(2)引用类型传引用,形参和实参指向同一个内存地址(同一个对象),所以对参数的修改会影响到实际的对象;
(3)String,
Integer, Double等immutable的类型特殊处理,可以理解为传值,最后的操作不会修改实参对象。
相关文章推荐
- JAVA基础知识回顾一 基本类型、类型转化
- Java基础知识回顾之一 ----- 基本数据类型
- JAVA基础知识回顾(基本数据类型,switch参数,equals与==的区别,Object有哪些公用方法)-1
- 学习Java基础的一些知识(6)Java的引用数据类型
- Java基础知识回顾之一 ----- 基本数据类型
- 【java基础知识(学习笔记)】--引用数据类型
- C#学习笔记(基础知识回顾)之值类型与引用类型转换(装箱和拆箱)
- C#学习笔记(基础知识回顾)之值类型和引用类型
- Java基础知识回顾-6
- 八大Java基础知识[Java入门程序员必备]
- Java基础知识回顾-7
- Java基础02-基本类型相关知识
- java基础知识回顾
- 黑马程序员——java语言基础知识回顾(一)
- 黑马程序员——java语言基础知识回顾(三)
- Java基础知识回顾-8
- java基础知识:数据类型,switch语句,分支结构
- Java基础知识回顾-5 常用基础类
- Java基础知识回顾-3 输入输出流
- [C#基础知识]Ref 关键字在修饰在引用类型时的行为