5. 数据类型
5.1 Java语言数据类型的分类
- 基本数据类型
- 引用数据类型(面向对象的时候再深入学习)
5.2 基本数据类型的四类八种
数据类型 | 关键字 | 内存占用 | 取值范围 |
整数 | byte | 1 | 负的2的7次方 ~ 2的7次方-1(-128~127) |
short | 2 | 负的2的15次方 ~ 2的15次方-1(-32768~32767) | |
int | 4 | 负的2的31次方 ~ 2的31次方-1 | |
long | 8 | 负的2的63次方 ~ 2的63次方-1 | |
浮点数 | float | 4 | 1.401298e-45 ~ 3.402823e+38 |
double | 8 | 4.9000000e-324 ~ 1.797693e+308 | |
字符 | char | 2 | 0-65535 |
布尔 | boolean | 1 | true,false |
说明
e+38表示是乘以10的38次方,同样,e-45表示乘以10的负45次方。
在java中整数默认是int类型,浮点数默认是double类型。
需要记忆以下几点
byte类型的取值范围:
-128 ~ 127
int类型的大概取值范围:
-21亿多 ~ 21亿多
整数类型和小数类型的取值范围大小关系:
double > float > long > int > short > byte
最为常用的数据类型选择:
- 在定义变量的时候,要根据实际的情况来选择不同类型的变量。
比如:人的年龄,可以选择byte类型。
比如:地球的年龄,可以选择long类型。 - 如果整数类型中,不太确定范围,那么默认使用int类型。
- 如果小数类型中,不太确定范围,那么默认使用double类型。
- 如果要定义字符类型的变量,那么使用char
- 如果要定义布尔类型的变量,那么使用boolean
5.3 定义8种基本数据类型变量
1public class VariableDemo3{ public static void main(String[] args){ //1.定义byte类型的变量 //数据类型 变量名 = 数据值; byte a = 10; System.out.println(a); //2.定义short类型的变量 short b = 20; System.out.println(b); //3.定义int类型的变量 int c = 30; System.out.println(c); //4.定义long类型的变量 long d = 123456789123456789L; System.out.println(d); //5.定义float类型的变量 float e = 10.1F; System.out.println(e); //6.定义double类型的变量 double f = 20.3; System.out.println(f); //7.定义char类型的变量 char g = 'a'; System.out.println(g); //8.定义boolean类型的变量 boolean h = true; System.out.println(h); } }
注意点
- 如果要定义 一个整数类型的变量,不知道选择哪种数据类型了,默认使用int。
- 如果要定义 一个小数类型的变量,不知道选择哪种数据类型了,默认使用double。
- 如果要定义一个long类型的变量,那么在数据值的后面需要加上L后缀。(大小写都可以,建议大写。)
- 如果要定义一个float类型的变量,那么在数据值的后面需要加上F后缀。(大小写都可以)
5.4 练习1
需求:定义5个变量记录老师的信息并打印
代码示例:
public class VariableTest1{ public static void main(String[] args){ //1.定义字符串类型的变量记录老师的姓名 String name = "黑马谢广坤"; //2.定义整数类型的变量记录老师的年龄 int age = 18; //3.定义字符类型的变量记录老师的性别 char gender = '男'; //4.定义小数类型的变量记录老师的身高 double height = 180.1; //5.定义布尔类型的变量记录老师的婚姻状况 boolean flag = true; //输出5个变量的值 System.out.println(name); System.out.println(age); System.out.println(gender); System.out.println(height); System.out.println(flag); } }
5.5 练习2
需求:将(电影名称,主演,年份,评分)四个信息选择不同类型的变量,随后打印出来。
代码示例:
public class VariableTest2{ public static void main(String[] args){ //1.定义字符串变量记录电影的名称 String movie = "送初恋回家"; //2.定义三个变量记录主演的名字 String name1 = "刘鑫"; String name2 = "张雨提"; String name3 = "高媛"; //3. 定义整数类型的变量记录年龄的年份 int year = 2020; //4.定义小数类型的变量记录电影的评分 double score = 9.0; //打印变量的信息 System.out.println(movie); System.out.println(name1); System.out.println(name2); System.out.println(name3); System.out.println(year); System.out.println(score); } }
5.6 练习3
需求:选择其中一部手机,将(手机价格,手机品牌)两个信息选择不同类型的变量,随后打印出来。
代码示例:
public class VariableTest3{ public static void main(String[] args){ //1.定义小数类型的变量记录手机的价格 double price = 5299.0; //2.定义字符串类型的变量记录手机的品牌 String brand = "华为"; //输出变量记录的值 System.out.println(price); System.out.println(brand); } }
6. 标识符
业内大多数程序员都在遵守阿里巴巴的命名规则。
6.1 硬性要求:
必须要这么做,否则代码会报错。
- 必须由数字、字母、下划线_、美元符号$组成。
- 数字不能开头
- 不能是关键字
- 区分大小写的。
6.2 软件建议:
如果不这么做,代码不会报错,但是会让代码显得比较low。
6.2.1 小驼峰命名法
适用于变量名和方法名
- 如果是一个单词,那么全部小写,比如:name
- 如果是多个单词,那么从第二个单词开始,首字母大写,比如:firstName、maxAge
6.2.2 大驼峰命名法
适用于类名
- 如果是一个单词,那么首字母大写。比如:Demo、Test。
- 如果是多个单词,那么每一个单词首字母都需要大写。比如:HelloWorld
不管起什么名字,都要做到见名知意。
阿里巴巴命名规范细节:
- 尽量不要用拼音。但是一些国际通用的拼音可视为英文单词。
正确:alibaba、hangzhou、nanjing
错误:jiage、dazhe - 平时在给变量名、方法名、类名起名字的时候,不要使用下划线或美元符号。
错误:_name
正确:name
7. 键盘录入
键盘录入的实际功能Java已经帮我们写好了,不需要我们自己再实现了,而Java写好的功能都放在了Scanner这个类中,所以,我们只要直接使用Scanner这个类就可以了。
使用步骤:
第一步:
导包:其实就是表示先找到Scanner这个类在哪。
第二步:
创建对象:其实就表示申明一下,我准备开始用Scanner这个类了。
第三步:
接收数据:也是真正干活的代码。
代码示例:
//导包,其实就是先找到Scanner这个类在哪 import java.util.Scanner; public class ScannerDemo1{ public static void main(String[] args){ //2.创建对象,其实就是申明一下,我准备开始用Scanner这个类了。 Scanner sc = new Scanner(System.in); //3.接收数据 //当程序运行之后,我们在键盘输入的数据就会被变量i给接收了 System.out.println("请输入一个数字"); int i = sc.nextInt(); System.out.println(i); } }