注释
单行注释
// (内容)
多行注释
/* (内容)
*/
文档注释
/**
*/
参数信息
- @author 作者名
- @version 版本号
- @since 指明需要最早使用的jdk版本
- @param 参数名
- @return 返回值情况
- @throws 异常抛出情况
使用标识符的注意点
- 所有标识符都应该以(A-Z或者a-z),美元符($)、或者下划线(_)开头。
- 不能使用关键字作为变量名或方法名(例如:class,public,main等)。
- 标识符是大小写敏感的。
数据类型
强类型语言
要求变量严格符合规定,所又变量都需要先定义后使用。
八大数据类型
整数
int(4字节)
byte(1字节)
short(2字节)
long(8字节)
浮点数
float(4字节)
double(8字节)
字符
char(2字节)
布尔值
boolean(true和false)
(其他都是引用数据类型)
整数拓展
二进制0b
八进制0
十六进制0x
浮点数拓展
float f=0.1f;
double d=1.0/10;
System.out.println(f==d);//false
float d1=2222020202222f;
float d2=d1+1;
System.out.println(d1==d2);//true
最好完全不使用浮点数进行比较
字符拓展
所有的字符本质还是数字
编码 Unicode表(97=a,65=A)
\u 转义字符
\t 制表符
\n 换行
布尔值扩展
boolean flag=true;
if(flag==true){}
if(flag){}
less is more!(越精简越好)
类型转换
byte,short,int,long,float,double
运算中,不同的数据类型转换成相同的类型再做运算
强制转换,(类型)变量名,右到左
自动转换,左的右
/*
-
不能对布尔值进行转换
-
不能把对象类型转换成不相干的类型
-
强制转换是把高容量转换到低容量
-
转换存在内存溢出(int)23.7=23
*/
数字之间也可以用下划线分割
int money=10_0000_0000
int years=20
long total=money*years;//-1474836489,计算的时候溢出了
long total=money*((long)years);//先把一个数转换为long
变量
局部变量必须声明初始化值
类成员变量:驼峰原则,除了第一个单词外,后面单词首字母大写。
局部变量:驼峰原则
常量:大写字母下划线:MAX_VALUE
类名:首字母大写和驼峰原则:GoodJob
方法名:首字母小写和驼峰原则:runRun()
逻辑运算符
ctrl+d复制当前行到下一行
除法要注意有时候要转换成浮点数
int a=3;
int b=a++;//先给b赋值,再自增
int c=++a;//先自增,再给c赋值
幂运算
Math.pow(3,2);//9
位运算
A=0011 1100
B=0000 1101
A&B =0000 1100
A|B=0011 1101
A^B=1100 0001
~B=1111 0010
2<<3=16
<< *2
>>
/2
其他运算
int a=10
int b=20
System.out.println(""+a+b)//1020
System.out/println(a+b+"")//30
x?y:z
如果x==true,则结果为y,否则结果为z
包
一般用公司域名倒置作为包名
导入其他包在package下面import 包名
.*(所有)
import com.*