数据类型
1.每一种数据都定义了明确的具体类型,再内存中分配了不同的内存空间
2。4类8种
整数---byte --- 1个字节--- -128到127
short---- 2个字节 ---- -2^15到 2^15-1
int --- 4个字节 ------ -2^31到2^31-1
long ---- 8个字节 -------- -2^63到 2^63-1
浮点
float ---- 4个字节 ------ -3.403E38 到 3.483E38
double ----- 占8个字节 ----- -1.798E308到 1.798E308
字符型
char ----- 2个字节 -------- 0到65535
布尔型
boolean 没有明确大小--理论上8分子1个字节
数据类型强制转换
举例 int x = 4 byte y = 3; y = (byte)(x + y);
变量相加和常量相加的区别
1.任何数据类型用+与字符串相连接都会产生新的字符串 (相当于加号起到连接的作用)
"hello"+'a'+1 ---------- helloa1
'a'+1+"hello"--------------------98hello
"5+5="+5+5 ------------ 5+5=55
逻辑关系
与& --- 非! ---- 或 | ----异或 ^ (相同则假,否则为真)---
1.&&与&结果一样,&&具有短路效果,左边是false,右边不执行
2.||与| 结果一样,||具有短路效果,左边是true,右边不执行
3.位运算--------改为二进制计算
<<:左移 左边最高位丢弃,右边补0 -----乘以2的几次幂
>>:右移 最高位是0,左边补0,。最高位是1,左边补齐1 ----除以2的几次幂
>>>:无符号移动,无论最高位是0还是1,左边补齐0
举例:最有效率的计算 2*8 ------ (2 << 3)
三元运算------ 关系表达式? 表达式1:表达式2;
键盘录入
import java.util.Scanner; //导包
class study {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in); //创建键盘录入对象
System.out.println("请输入一个数:");
int x = sc.nextInt(); //将键盘录入的数据存储在x中
System.out.println(x);
}
}
switch语句
switch(表达式){ //基本数据类型可以接受 byte,short,char ,int ,string
case 值1: //case后面只能是常量不能是变量,case后面的值不能出现相同的
语句体;
break;
}
二维数组
int [ ] x [ ] = int x[ ] [ ]