一、变量
1. 变量
变量:一个数据存储空间的表示
不同数据存入具有不同内存地址的空间,相互独立
通过变量名可以简单快速地找到数据
2. 变量命名规则
命名要有意义
不能使用关键字,如public、class
使用驼峰命名法
3. 常用数据类型
数值
整型 int
浮点型 double float
非数值
char
boolean
String
String不是基本数据类型,是引用数据类型,它是Java提供的一个类
4. 数据类型说明
数据类型 | 大小 | 取值范围 | |
---|---|---|---|
byte | 字节类型 | 1字节8位 | -128~+127 |
int | 整型 | 4字节32位 | -2147483648(-2^31) ~ + 2147483647(2^31-1) |
short | 短整型 | 2字节16位 | -32768 (-2^15) ~ + 32767 (+2^15-1) |
long | 长整型 | 8字节64位 | -2^63 ~ + 2^63-1 |
float | 单精度浮点型 | 4字节32位浮点数 | 1.4E-45 ~ 3.4E+38 , -1.4E-45 ~ -3.4E+38 |
double | 双精度浮点型 | 8字节64位浮点数 | 4.9E-324 ~ 1.7E+308, -4.9E-324 ~ -1.7E+308 |
char | 字符类型 | 2字节 | |
boolean | 布尔类型 | 4字节 |
5. 变量声明及使用
第一步:声明变量,根据数据类型在内存申请空间
数据类型 变量名; int money;
第二步:赋值,即“将数据存储至对应的内存空间”
变量名=数值; money=1000;
第一步和第二步可以合并
数据类型 变量名=数值; int money=1000;
第三步:使用变量,即“取出数据使用”
二、常量
final int NUM = 10; final double PI = 3.14; int r = 2; double area = PI * r * r;
优点:比较安全
推荐做法:
(1)常量名通常大写
(2)不同字符使用下划线分隔
(3)只能被赋值一次,通常定义时即对其初始化
三、Scanner的使用
使用Scanner
第一步:导入Scanner类
import java.util.*;
第二步:创建Scanner对象
Scanner input=new Scanner(System.in);
第三步:获得键盘输入的数据
int now=input.nextInt();
四、类型转换
1. 自动类型转换
double firstAvg = 81.29; //第一次平均分 double secondAvg; //第二次平均分 int rise = 2; secondAvg = firstAvg + rise; System.out.println("第二次平均分是:" + secondAvg);
自动类型转换规则
规则1:如果一个操作数为double型,则整个表达式可提升为double型
规则2:满足自动类型转换的条件
两种类型要兼容 数值类型(整型和浮点型)互相兼容
目标类型大于源类型 例如:double型大于int型
2. 强制类型转换
int b = (int)10.2; double a = 10; int c = (int)a;
五、赋值运算符
变量名=表达式;
表达式就是符号(如加号、减号)与操作数(如b,3等)的组合
六、算数运算符
1. 基本的算数运算
+
加
-
减
*
乘
/
除
%
取余
++
自增加1
--
自减减1
2. 复合算数运算符
+=
例a+=3
,将a与3相加得到的值重新赋值给a
-=
*=
/=
%=
七、关系运算符
运算符 | 含义 | 范例 | 结果 |
---|---|---|---|
== | 等于 | 5==6 | false |
!= | 不等于 | 5!=6 | true |
> | 大于 | 5>6 | false |
< | 小于 | 5<6 | true |
>= | 大于等于 | 5>=6 | false |
<= | 小于等于 | 5<=6 | true |
=
为赋值运算符,==
为等于运算符关系表达式的结果为布尔值
>
、<
、>=
、<=
运算符的优先级别高于==
、!=
>
、<
、>=
、<=
运算符只支持数值类型的数据比较
八、逻辑运算符
运算符 | 含义 | 运算规则 |
---|---|---|
&& | 短路与 | 两个操作数都是true,结果才是true |
|| | 短路或 | 两个操作数一个是true,结果就是true |
! | 非 | 操作数为true,结果为false |
! | 非 | 操作数为false,结果为true |
如果第一个操作数已经能确定表达式的值,第二个操作数就不必计算了
优先级别:!
>&&
>||
九、条件运算符
条件?表达式1:表达式2; 条件为true,选择表达式1 条件为false,选择表达式2
十、运算符优先级
单目运算符包括! ++ --,优先级别高 优先级别最低的是赋值运算符 可以通过()控制表达式的运算顺序,()优先级最高 从右向左结合性的只有赋值运算符、三目运算符和单目运算符 算术运算符 > 关系运算符 > 逻辑运算符