【Java基础】02.Java数据类型
目录
Java 数据类型
3.1 java程序中 “+” 号的使用
3.2 java中的数据类型
3.2.1 基本数据类型:数值型
(1)整数类型
(2)浮点(小数)类型
3.2.2 基本数据类型:字符型
3.2.3 基本数据类型:布尔型
3.2.4 基本数据类型转换
(1)自动类型转换
(2)强制类型转换
(3)基本数据类型和字符串(String)类型的转换
3.2.5 引用数据类型:类(class)
3.2.6 引用数据类型:接口(interface)
3.2.7 引用数据类型:数组([ ])
本篇内容是对Java中,基本数据类型和引用数据类型的基本介绍,有助于零基础的小伙伴快速入门。
Java 数据类型
3.1 java程序中 “+” 号的使用
3.2 java中的数据类型
说明:String类型是一个类,属于引用类型。
3.2.1 基本数据类型:数值型
(1)整数类型
整数类型小细节:
第一条,”有固定的范围和字段长度“,指的是在不同的操作系统下,Java的整数类型所占存储空间和表示范围是不变的。如byte占用1个字节,范围为-128 ~ 127。
第二条,Java中整型常量默认为int型,如7。若想把它声明为long型,则可以在后面加“L”,如7L。则“7L”就是long型的7。
(2)浮点(小数)类型
面试中可能问到:
浮点数在机器中的存放形式:浮点数 = 符号位 + 指数位 + 尾数位。
浮点类型小细节:
说明:
(1)上图第2点,看下图中注释:
(2)上图第5点,看下图注释:
浮点类型,两数相除,比较相等的方法如上。(因为浮点数除法在计算机中涉及到精度的问题,所以不能直接比较相等,而是在一个精度范围内比较相等)。
3.2.2 基本数据类型:字符型
字符类型小细节:
3.2.3 基本数据类型:布尔型
布尔类型小细节:
值得注意:与C语言不同,布尔类型不可以用0或1来代替。
3.2.4 基本数据类型转换
(1)自动类型转换
在进行赋值或运算时,精度较小的类型自动转换为精度的大数据类型。
一个转换的例子:
上图中,“a”字符转为了int型,存储在num中。
基本数据类型自动转换小细节:
(2)强制类型转换
强制类型转换,精度降低和溢出例子:
强制类型转换小细节:
上图第3条,int常量值可以赋值给char类型变量,因为char类型本质是一个整数。int变量不能直接赋值给char类型变量,因为int是高精度,char相较于int是低精度类型,需要强制转换。
(3)基本数据类型和字符串(String)类型的转换
说明:
(1)将基本数据类型转为字符串(String)类型很简单,只要在变量后加空字符串( + “” )就可以了。
(2)将字符串(String)类型转为基本数据类型,需要调用基本类型的包装类中的parseXX方法即可。
值得注意的是,将字符串(string)类型转换为字符(char)类型,一般指的是将字符串第一个字符取出来。
利用xx.charAt(0)方法,取出字符串xx的第一个字符。如下图所示
字符串和基本数据类型转换小细节:
3.2.5 引用数据类型:类(class)
类与对象概述:
类就是自己定义的数据类型,类里面包含自己定义的属性和方法。创建一个对象,这个对象就可以调用里面的属性和方法。
类与对象的区别:
类包含很多属性,但属性都没有具体值,是抽象的。但对象是具体的,每一个都有具体的属性。如Cat(猫)类,它包含名字,颜色等属性,new一个Cat对象,这个对象有具体的名字,颜色等具体属性。
3.2.6 引用数据类型:接口(interface)
接口基本介绍:
接口的使用小细节:
3.2.7 引用数据类型:数组([ ])
什么是数组?
数组的定义方式:
方式1:动态初始化(直接)
另外:
数据类型 数组名[ ] = new 数据类型[大小] 等价于 数据类型[ ] 数组名 = new 数据类型[大小]。也就是说,第一个“[ ]”放在放在数据类型后面,或者变量名后面都是可以的,一般放在数据类型后面,因为这样定义比较清晰。
方式2:动态初始化(先声明,再分配空间)
说明:
此种方法与第一种不同,先声明,当满足条件时,可能再new(分配空间)。
方式3:静态初始化
数组的注意事项:
(以上来自韩顺平老师课程笔记整理)