学习Java基础的一些知识(3)Java的一些数据类型
2018-02-06 21:00
531 查看
在java中有两种数据类型:基本数据类型和引用数据类型。
基本数据类型也可以分为两大类:数值型、布尔型。
[b]四种整数类型:
[/b]
byte:取值范围 -128~127 8
位 (1字节)
short:取值范围 -32768 ~ 32767 16位
(2字节)
int:取值范围 -2^31~2^31-1 32
位 (4字节)
long:取值范围 -2^63~2^63-1 64位 (8字节)
两种浮点数类型:默认为double类型
float:取值范围 (+-)3.402823447E+38F 32位 (4字节)
double:取值范围 (+-)1.79769313486231570E+308 64位 (8字节)
字符类型:
char:取值范围 0~(2^16)-1 16位 (2字节)
布尔类型:默认为false
boolean: 取值范围
0/1(true false) 1位 (1字节或8字节)
引用数据类型:
类、接口类型、数组类型、枚举类型、注解类型。(此时作者接触到的引用类型只有类和数组类型,剩下的是百度搜索)
基本数据类型&引用数据类型区别在于:
(1)概念方面
基本数据类型:变量名指向具体的数值
引用数据类型:变量名指向存数据对象的内存地址。
(2)内存分配方面
基本数据类型:变量在声明之后进入方法栈java就会立刻分配给他内存空间。
引用数据类型:引用类型的变量的值存放在堆内存中,他以特殊的方法指向存放数据的内存地址,存放的是内存地址,而并不是实际的数据。
(3)作为参数传递方面
基本数据类型:变量在作为实际参数进行传递之后,自身并不会发生任何改变。
引用数据类型:变量在作为实际参数进行传递时,传递的并不是实际的数据值,而是内存地址,所以传递之后一旦经过修改,原来的数据将会被替换(等同于修改数据)。
定义的在不同范围的变量为两种不同的作用范围
实例变量(成员变量):
在类的{}内直接定义的变量,称为实例变量或成员变量。
作用范围:整个类中都可以使用。
实例变量在创建对象时会自动初始化,并有初始值(默认值)。
局部变量:
在方法中或代码块{}中定义的变量,称之为局部变量。
作用范围:只在包含它的方法或代码块内有效。
局部变量不会自动初始化,没有默认值,使用之前必须要初始化。
类型转换分为两种:自动类型转换和强制类型转换
自动类型转换:类型是小类型转换为大类型,如果一个byte类型和int类型数据计算,byte类型数据会自动转为int数据类型。
强制类型转换:类型是大类型转换为小类型,如果一个double类型和int类型数据计算,要先将double类型强转转换为int数据类型,(一般情况下不建议强转,在刚开始接触时知道有这么个操作即可,因为强转很可能会让数据损失精度)。
在此声明:作者只是一名学生,写这些这是为了整合一下手头拥有的资源方便自己也方便大家,如果有错误及时联系作者整改。希望大神与新学习java的同学们多多指点,如果需要详细教学视频联系方式请私信作者。
基本数据类型也可以分为两大类:数值型、布尔型。
[b]四种整数类型:
[/b]
byte:取值范围 -128~127 8
位 (1字节)
short:取值范围 -32768 ~ 32767 16位
(2字节)
int:取值范围 -2^31~2^31-1 32
位 (4字节)
long:取值范围 -2^63~2^63-1 64位 (8字节)
两种浮点数类型:默认为double类型
float:取值范围 (+-)3.402823447E+38F 32位 (4字节)
double:取值范围 (+-)1.79769313486231570E+308 64位 (8字节)
字符类型:
char:取值范围 0~(2^16)-1 16位 (2字节)
布尔类型:默认为false
boolean: 取值范围
0/1(true false) 1位 (1字节或8字节)
引用数据类型:
类、接口类型、数组类型、枚举类型、注解类型。(此时作者接触到的引用类型只有类和数组类型,剩下的是百度搜索)
基本数据类型&引用数据类型区别在于:
(1)概念方面
基本数据类型:变量名指向具体的数值
引用数据类型:变量名指向存数据对象的内存地址。
(2)内存分配方面
基本数据类型:变量在声明之后进入方法栈java就会立刻分配给他内存空间。
引用数据类型:引用类型的变量的值存放在堆内存中,他以特殊的方法指向存放数据的内存地址,存放的是内存地址,而并不是实际的数据。
(3)作为参数传递方面
基本数据类型:变量在作为实际参数进行传递之后,自身并不会发生任何改变。
引用数据类型:变量在作为实际参数进行传递时,传递的并不是实际的数据值,而是内存地址,所以传递之后一旦经过修改,原来的数据将会被替换(等同于修改数据)。
定义的在不同范围的变量为两种不同的作用范围
实例变量(成员变量):
在类的{}内直接定义的变量,称为实例变量或成员变量。
作用范围:整个类中都可以使用。
实例变量在创建对象时会自动初始化,并有初始值(默认值)。
局部变量:
在方法中或代码块{}中定义的变量,称之为局部变量。
作用范围:只在包含它的方法或代码块内有效。
局部变量不会自动初始化,没有默认值,使用之前必须要初始化。
类型转换分为两种:自动类型转换和强制类型转换
自动类型转换:类型是小类型转换为大类型,如果一个byte类型和int类型数据计算,byte类型数据会自动转为int数据类型。
强制类型转换:类型是大类型转换为小类型,如果一个double类型和int类型数据计算,要先将double类型强转转换为int数据类型,(一般情况下不建议强转,在刚开始接触时知道有这么个操作即可,因为强转很可能会让数据损失精度)。
在此声明:作者只是一名学生,写这些这是为了整合一下手头拥有的资源方便自己也方便大家,如果有错误及时联系作者整改。希望大神与新学习java的同学们多多指点,如果需要详细教学视频联系方式请私信作者。
相关文章推荐
- 学习Java基础的一些知识(6)Java的引用数据类型
- 黑马程序员--Java学习日记之基础知识(数据类型和运算符)
- 【Java学习笔记】基础知识学习1【基本输出,数据类型,基础运算符号】
- java学习02-java基础知识、基本数据类型、运算符
- Java基础知识学习之路-04-第三章-数据类型和运算符
- Java基础知识学习二(数据类型及运算)
- 【java基础知识(学习笔记)】--引用数据类型
- java 从零开始,学习笔记之基础入门<数据类型的转换>(五)
- java基础学习 视频学习 数据类型以及运算符
- java基础学习—基本数据类型
- 黑马程序员-Java基础知识预备之Java数据类型和运算符
- Java第一课 Java的一些基本概念,Java的起源、为什么我们要学习Java语言,Java跨平台原理剖析;Java环境变量的配置,初学者常犯的问题,Java语言的基本数据类型和Java的语句。
- [第三章、Java基础知识]第一节、数据类型
- 基础知识--Java基本数据类型
- java基础知识(一)数据类型默认值
- Java 学习基础第三章之数据类型和运算符
- 【学习笔记三】最基本的JAVA基础[数据类型,运算符]
- C\C++ 程序员从零开始学习Android - 个人学习笔记(四) - java基础 - 数据类型、变量、字符串、数组
- java基础学习-java数据类型
- 对java基础数据类型在运算过程中的自动转换的一些分析