变量和基本数据类型
变量和基本数据类型是什么?
变量组成为 数据类型+变量名[ = 值]
int b;
int a = 1;
- 变量可在创建时或创建后赋值,只有赋值后才能使用
- 常量只能在创建时赋值
- 静态变量会自动初始化为默认值
- 变量名由字母开头并由字母和数字构成
数据类型描述了变量的数据结构,每一个变量都要声明一种类型。在Java中一共有8种基本数据类型:byte、short、int、long、float、double、char、boolean
基本数据类型介绍
类型 | 长度 | 成员变量默认值 | 备注 |
---|---|---|---|
byte | 1字节 | 0 | 整数除以0会产生异常 |
short | 2字节 | 0 | 同上 |
int | 4字节 | 0 | 同上 |
long | 8字节 | 0L | 同上 |
float | 4字节(有效位6-7位) | 0.0F | 正浮点数除以0为正无穷大 负浮点数除以0为负无穷大 0/0或负数平方根为NaN |
double | 8字节(有效位15位) | 0.0 | 同上 |
char | 1字节 | ‘\u0000’ | 转义字符: \n 换行 \r 回车 \’ 表示 ‘ \’’ 表示 " \\ 表示 \ |
boolean | 1字节 | false | boolean值不能用0和非0代替 |
Tips:
- java没有无符号数据类型,且数据类型长度和平台无关
- 表示2进制:0b1000=8(10)
- 表示8进制:010=8(10)
- 表示16进制:0xA=10(10)
- 还可为数字量加下划线增加可读性:1_000_000
- 从下到上的数据类型转换:char、byte、short转为int操作,有long、float、double则转为long、float、double
- 从上到下的数据类型需要强制转换: 要转的数据类型 变量=(要转的数据类型)原来的值,如double a=1.5; int b=(int)a;
运算符
运算符 | 意义 |
---|---|
+ - * / | 加减乘除 |
% | 求余 |
++和– | 自增自减 i++ 表示先操作i再加一 ++i 表示先加一再操作i |
= | 赋值 |
+=和-= | 如果操作的数据类型不同,会发生隐式的数据类型转换 int x=1; x+=1.5 等价于x=(int)(x+1.5) |
==和!= | 判(不)等 |
< <= > >= | 小于、小于等于、大于、大于等于 |
&& || ! | 与或非 短路效应:第一个表达式为true(false),就不会计算第二个表达式 |
?: | z=x<y?x:y 表示将x和y中较小的值赋值给z |
& | ^ ~ | 位运算与、或、异或、取反 |
<< >> >>> | 符号位填充左移、符号位填充右移、0填充右移 对int的移位,右操作数要进行%32运算,即a<<33和a<<1是等价的 |
() | 括号可改变上述运算符的运算顺序 |