基础语法
标识符 关键字
图片1
图片2
图片3
八大基本类型
public class Demo01 {
public static void main(String[] args) {
//八大数据类型
//整数
int num1 = 10;
byte num2 = 20;
short num3 = 30;
long num4 = 40L;//Long类型要在数字后面加L
//小数:浮点型
float num5 = 30.4F;//Float类型要在数字后面加F
double num6 = 4.138129391283;
//字符(代表就一个字)
char name = '字';
//字符串。String不是关键字,是一个类
//String namea = "字符串";
//布尔值
boolean flag1 = true;
boolean flag2 = false;
}
}
图片4
字符扩展
//字符扩展
System.out.println("=========================================");
char c1 = 'a';
char c2 = '中';
System.out.println(c1);//a
System.out.println((int)c1);//97
System.out.println(c2);//中
System.out.println((int)c2);//20013
//所有字符本质还是数字
//Unicode编码表 (a = 97)
//U0000 UFFFF
char c3 = '\u0061';
System.out.println(c3);//a
转义字符
//转义字符
// \t 制表符
// \n 换行
System.out.println("hello\nworld");
地址与值
//第一个是地址 两个不相等;第二个是值 两个相等
System.out.println("=========================================");
String sa = new String("hello world");
String sb = new String("hello world");
System.out.println(sa==sb);//false
String sc = "hello world";
String sd = "hello world";
System.out.println(sc==sd);//true
强制转换
//强制转换 (类型)变量名 高--低
int i1 = 128;
byte b1 = (byte)i1; //byte最大127 内存溢出
System.out.println(i1);//128
System.out.println(b1);//-128
//自动转换 低--高
int i2 = 128;
double b2 = i2;
System.out.println(i2);//128
System.out.println(b2);//128.0
数字可以使用下划线分割
//操作比较大的数字时,注意溢出
//JDK7新特性,数字之间可以用下划线分割
int money = 10_0000_0000;
System.out.println(money);//输出1000000000
int years = 20;
int total = money*years;//-1474836480 计算时已经溢出
long total2 = money*years;//-1474836480 默认是int 转换前已经出现问题
long total3 = money*(long)years;//20000000000 先把一个数转换为long
System.out.println(total);
System.out.println(total2);
System.out.println(total3);