Java学习笔记1
用IDEA输出第一条语句
快捷键:
- psvm + enter = public static void main(String[] args) {…}
- sout + enter = System.out.println(…);
public class Hello {
//psvm快捷键
public static void main(String[] args) {
//sout快捷键
System.out.println("Hello, World!");
}
}
Java的基础语法
注释
单行注释,多行注释,文档注释
//我是单行注释
//多行注释 /*注释*/
//输入/* + enter
/*
我是多行注释
我是多行注释
我是多行注释
我是多行注释
我是多行注释
*/
//JavaDoc文档注释 /**注释*/
//输入/** + enter
/**
* @deprecated HelloWorld
* @Author Hank
*/
标识符
关键字
Java 语言目前定义了 51 个关键字,这些关键字不能作为变量名、类名和方法名来使用。以下对这些关键字进行了分类。(资料来自网络)
- 数据类型:boolean、int、long、short、byte、float、double、char、class、interface
- 流程控制:if、else、do、while、for、switch、case、default、break、continue、return、try、catch、finally
- 修饰符:public、protected、private、final、void、static、strict、abstract、transient、synchronized、volatile、native
- 动作:package、import、throw、throws、extends、implements、this、supper、instanceof、new
- 保留字:true、false、null、goto、const
变量名
变量名规定:
- 必须以字母、下划线、或者美元符开头
- 以美元符开头,以美元符 开头命名的变量虽然能够编译通过但是不建议使用
- 中文也可以作为命名开头且编译也能通过,但是不建议使用
- 除开头外后面的部分可以有字母、下划线、美元符$以及数字组成
- 虽然变量名不限制长度,但能表达清楚命名的含义即可
- 变量名不可以和java的关键字冲突
- 尽量达意
数据类型
强类型语言:要求变量的使用要符合规定,所有变量都必须先定义后才能使用。
基本类型(primitive type)
数值类型:
- 整数类型:byte(1byte),short(2byte),int(4byte),long(8byte)
- 浮点类型:float(4byte),double(8byte)
- 字符类型:char(2byte)
boolean类型:
- true,false(1bit)
public class Hello {
public static void main(String[] args) {
//八大基本数据类型
//整数
byte num1 = 10;
short num2 = 20;
int num3 = 30;
long num4 = 40L; //长整型后加L
//浮点数
float num5 = 50.5F; //float后加F
double num6 = 3.1415926;
//字符
char name = '哈'; //单引号
//字符串 String不是关键字,类
String names = "二哈"; //双引号
//布尔值
boolean flag1 = true;
boolean falg2 = false;
}
}
引用数据类型(reference type)
- 类
- 接口
- 数组
类型转换
精度由低到高排序:byte, short, char --> long --> float–> double
强制类型转换
从高到低(可能存在内存溢出和精度问题)
//(类型)变量名
double num1 = 12.3;
int num2 = (int)num1;
//num2 = 12
自动转换
从低到高
int num3 = 15;
double num4 = num3;
//num4 = 15.0
char c = 'a';
int d = c + 1;
//d = 98
补充
//补充1
int money = 10_0000_0000;
//等同于int money = 1000000000;
//补充2
//溢出问题需要先类型转化再运算
int money = 10_0000_0000;
int year = 20;
long m1 = money * year;
long m2 = money * (long)year;
System.out.println(m1); //-1474836480
System.out.println(m2); //20000000000