第二章:变量、数据类型、运算符、表
达式
一、变量
1.
概念:计算机中的一块
内存空间,存储数据
的基本单元
2.
变量的组成部分:数据类型、变量名、数据
3.
语法:
(1)
先声明,再赋值:
数据类型 变量名
; //
声明
变量名
=
值
; //
赋值
(2)
声明的同时并赋值:
数据类型 变量名
=
值
;
(3)
同时定义多个相同类型的变量:
数据类型 变量名
1,
变量名
2=
值
,
变量
3;
二、
java
中的数据类型分类
1.
简单数据类型、基本数据类型
(
原始数据
)
B-Byte
,字节,
1个字节 = 8位(8b) b->bit
1KB= 1024B
1MB= 1024KB
1GB= 1024MB
1TB= 1024GB
.......
10.24
号,称之为 程序员节
(1)
整数类型(4种)
byte 1B -128~127
short 2B -32768~32767
int 4B
-2147483648~2147483647
long 8B -922
京
~922
京
-1
注意:
long
的字面值后面需要加
L
或是
l(
建议大写,区分数字1)
(2)
小数类型(浮点类型-2种)
float
:单精度,
4B
,字面值后面
必须加f/F
double
:双精度
,
,
8B,
字面值后面
可以加D/d,或是不加
注意:
float
和
double
可以采用科学计数法
进行存储
(3)
字符类型(1种)
char 2B
,字面值形式如下:
a. 单引号引起来的一个字符
char c1 = 'A';
b.
采用整数形式,整数范围
0~65535
char c2 = 65;
char c3 = 29233;
c.
转义字符:
'\n'
:换行
'\t'
:水平跳格
'\' '
:单引号
'\" '
:双引号
(4)
布尔类型(1种)
boolean
字面值
true/false
true
:代表关系成立
false
:关系不成立
2.
对象数据类型、引用数据类型
(1)
类、数组、接口
等都称为对象类型
(2)
以字符串为例:
a.
字符串:
String
b.
使用 双引号引起来的 一个或是多个字符 String str = "hello";
数据类型实际开发总结:
整数类型通常使用:int
小数类型:double
布尔类型:通常应用判断、循环结构中
字符类型:实际开发不常用
字符串:实际开发频繁使用
实际存储数据:根据项目业务
三、数据类型之间的转换
1.
自动类型提升
(1)
场景:小数据类型赋值给大数据类型
(
存储的
数据范围衡量数据的大小
)
(2)
规则:
byte->short->int->long->float->double
char->int->long->float->double
2.
强制类型转换
(1)
场景:大数据类型赋值给小数据类型,需要强制类型转化
(2)
语法:
源数据类型 变量名
=
值
;
目标类型 变量名
2 = (
目标类型
)
变量名
;
四、表达式
1.
理解:表达式由字面值、变量、运算符组成式子,通常有一个结果
2.
表达式的结果规则:
(1)
如果表达式中有
double
类型,结果为
double
(2)
表达式中没有
double
类型,有
float
,结果为float
(3)
表达式中没有
double/float
,有
long
,结果为long
4)
其余结果为:
int
五、运算符
1.
算术运算符
+ - *(
乘法
) /(
除法
) %(
取余数
/
取模)
注意:
+
的两种用法:
a.
如果
+
两端都为数值类型,则为加法运算
b.
如果
+
两端有一端为字符串类型,则为字符串拼接
2. 赋值运算符 ( = += -= *= /= )
3.
比较运算符
(
关系运算符
)
>
:大于
>=
:大于等于
<
:小于
<=
:小于等于
==
:等于
!=
:不等于
注意:
被关系运算符连接的表达式结果类型为布尔类型,所以关系运算符连接的表达式也被称为 布尔表达式(结果:true/false)
4.
逻辑运算符
&&
:逻辑与,两端连接的为布尔表达式,只有当两端同时为true
,结果才
true
||:
逻辑或,两端连接的是布尔表达式,只要有一端为true
,结果为
true !:
逻辑非,在结果上取反
5.
一元运算符:
++(
自增
) --(
自减
)
实际开发应用:
a++
和
++a
:将
a
自身变量值进行加
1
a--
和
--a
:将
a
自身变量值进行减
1
面试
/
考试常见内容:
int c = a++;
先使用,再加
1
int c = ++a;
先计算加
1
,再使用
6.
三元运算符
(1)
语法:
布尔表达式
?
表达式
1:
表达式
2
(2)
原理:先判断表达式是否成立,结果为true,执行表达式
1
,否则执行表达式
2
六、
Scanner(
扫描仪
)
1.
作用:
可以让用户输入信息,提高人机交互
2.
导包:
(1)
语法:
import
包名
1.
包名
2.
类名
;//
导入指定类
import
包名
1.
包名
2.*;//
导入包中所有 类
(2) 位置:定义在package
语句的后面,所有类上面
(3)
例如:
import java.util.Scanner;
3.
步骤:
(1)
导入包:
import java.util.Scanner;
import java.util.*;
(2)
创建对象:
Scanner sc = new
Scanner(System.in);
(3)
使用:
int n = sc.nextInt();//
输入一个整数
double d = sc.nextDouble();//
输入一个小数
String s = sc.next();//
输入一个字符串
char c = sc.next().charAt(0);//
输入一个字符