Java基础语法
1.注释
- 单行注释://输出一个hello world!,每写一行都要加一个//。
- 多行注释:/* 注释内容 */。
- 文档注释:JavaDoc,/** 注释内容 /,每行注释前都有一个。
2.标识符
关键字
-
常用关键字:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-X8bpQJ6x-1648454961578)(Screenshot_20220328_092909_tv.danmaku.bilibilihd.png)] -
不可以将已定义关键词作为类名等使用。
-
变量名只能以A-Z字母,$和_开头
-
变量名对大小写敏感。
3.数据类型
-
Java属于强类型语言,所有变量必须定义后才能使用。
-
Java数据类型分为两大类
- 基本类型:如
数值类型——整数型:byte占1个字节范围:-128-127; short占两个字节范围:-32768-32767; int占4个字节范围:-2147483648-2147483647; long占8个字节范围:。。。。。
long类型需要在后面加一个L进行区分。
浮点类型:float占4个字节; double占8个字节;浮点意为可以写小数。
float类型需要在数字后面加F。
字符类型:char占2个字节。只能输入单个字符,需要用英文’’。
String为字符串,用英文""
Boolean类型——占1位,其值只有true和false两个。
public class Test1 {
public static void main(String[] args) {
//整数
int num1 = 20;
byte num2 = 30;
short num3 = 10000;
long num4 = 2134124134132L;
//浮点数
float num5 = 20.2F;
double num6 = 123.63;
//字符
char name = 'q';
String name1 = "厉害";
boolean flag = true;
}
}
- 引用数据类型:类、接口、数组
- 1Byte=8bit,1bit为一个2进制位。
- 字符为计算机使用的字幕、数字、字和符号。
- 1GB=1024MB,1MB=1024KB,1KB=1024B。
- 整数拓展:2进制0b开头,8进制0,16进制0x。
- 浮点数表现的位数有限,存在舍入误差,是一个大约的数据,不精确。
- 尽可能避免使用浮点数进行对比。
- 银行业务使用BigDecimal。
- char字符可以参与运算,使用int可以强制转换为Unicode编码,Unicode编码长度为0-65536,范围为U0000-UFFF。
- 转义字符:\t;换行:\n.
- 布尔值
public class Test1 {
public static void main(String[] args) {
//整数拓展
int i = 10;
int i2 = 010; //8进制
int i3 = 0x10; //16进制0x, 0-9 A-Z
int i4 = 0b10;
System.out.println(i);
System.out.println(i2);
System.out.println(i3);
System.out.println(i4);
System.out.println("=======================================================================");
//浮点数拓展
float f = 0.1f;
double d = 1.0/10;
System.out.println(f==d);
System.out.println(f);
System.out.println(d);
float d1 = 1123123123f;
float d2 = d1 +1;
System.out.println(d1==d2);
System.out.println("======================================================================");
//字符拓展
char c1 = 'A';
char c2 = '中';
System.out.println(c1);
System.out.println(c2);
System.out.println((int)c1);//强制转换数据类型,变为Unicode编码
System.out.println((int) c2);
//char字符可以运算,字符本质上为数字。Unicode占位2字节,长度为0-65536。
char c3 = '\u0061';
System.out.println(c3);
//转义字符
// \t 制表符
// \n 换行
System.out.println("hello\tworld");
System.out.println("===============================================================");
String sa = new String("hello world");
String sb = new String("hello world");
System.out.println(sa==sb);
String sc = "hello world";
String sd = "hello world";
System.out.println(sc==sd);
//对象,从内存分析,前者使用了new,因此在内存中分配了不同的地址,所以对比地址不同;后者对比的是字符串,自然相同。
System.out.println("==============================================================");
//布尔值扩展
boolean flag = true;
//if(flag==true)同if(flag)含义相同
if (flag==true){
}
}
}