注释
单行多行JavaDoc:文档注释 标识符
关键字标识符注意点 数据类型
整数浮点数字符布尔 类型转换变量常量运算符
算数运算符赋值运算符关系运算符逻辑运算符位运算符(了解)条件运算符扩展赋值运算符 Math工具类包机制
注释 单行//单行注释多行
JavaDoc:文档注释
标识符 关键字
关键字大全
标识符注意点必须以字母(A-Z,a-z),美元符,或者下划线开始大小写敏感不能以关键字命名 数据类型
强类型语言
所有变量必须先定义后才能使用 弱类型语言Java基本类型
基本类型:整数、浮点、字符引用类型:类、接口、数组
整数拓展:进制
- 二进制0b
- 十进制
- 八进制0
- 十六进制0x
整数负数 (想象一下【0】0000 0000,往负数走就全部取反变成【-1】1111 1111,可能和数字电路有关)
了解 原码、反码、补码1(符号位)111 1111(表示-1)1(符号位)000 0000(表示-128) 因为表示0的占了正整数一个位置,所以整数比负数少了1个~取反
0的取反是-110 的取反是-11……
| 类型 | 位数 | 字节 | 默认值 | 范围 | 二进制 |
|---|---|---|---|---|---|
| byte | 8 | 1字节 | 0 | − 2 7 -2^{7} −27~ 2 7 − 1 2^{7}-1 27−1 | 1000 0000~01111111 |
| short | 16 | 2字节 | 0 | − 2 15 -2^{15} −215~ 2 15 − 1 2^{15}-1 215−1 | … |
| int | 32 | 4字节 | 0 | − 2 31 -2^{31} −231~ 2 31 − 1 2^{31}-1 231−1 | … |
| long | 64 | 8字节 | 0L | − 2 63 -2^{63} −263~ 2 63 − 1 2^{63}-1 263−1 | … |
int a =0b10; //2 int j = 010; // 8 int i = 10; //10 int k = 0x10; //16浮点数
| 类型 | 位数 | 字节 | 默认值 | 范围 | 二进制 |
|---|---|---|---|---|---|
| float | 32 | 4字节 | 0.0f | ||
| double | 64 | 8字节 | 0.0d | … |
浮点数拓展(银行业务怎么表示钱?)
不要使用浮点数进行比较
float a = 0.1f //单精度 double b = 1.0/10; //双精度 double c = 3*0.1; // 0.30000000000000004 System.out.println(a==b); //false字符
| 类型 | 位数 | 字节 | 默认值 | 范围 | 十进制 |
|---|---|---|---|---|---|
| char | 16 | 2字节 | u0000~uffff | 0 ~ 2 16 − 1 2^{16}-1 216−1= 0~65535 |
布尔都是可以转换成 int
| 类型 | 位数 | 字节 | 默认值 | 范围 |
|---|---|---|---|---|
| boolean | 1 | false | 不能对其进行转换 |
if (flag==true){} //新手
if (flag){} //老手 less is more 精简代码
类型转换
低 —>高
byte ->short ->char ->int ->long ->float ->double
强制转换(高—>低)
内存溢出精度问题不能对boolean进行转换
int i =128 byte j = (byte)i// j =-128自动类型转化 (低 —>高)
变量JDK7 新特性,数字之间可以用下划线分割10_0000_0000
Java变量要素包括变量名,变量类型和作用域
局部变量
需要声明&初始化 实例变量
必须要对象调用只要申明不用初始化(默认值)默认值:除了基本类型其他的都是null 类变量
类范围内调用只要申明不用初始化(默认值)static修饰
常量命名规范
变量、方法、类名:见名知意
局部变量、类成员变量、方法名:首字母小写(驼峰原则)
常量:大写字母_下划线
类名:首字母大写(驼峰原则)
final 常量名 = 值
static 和final都是修饰符,不区分前后顺序 运算符
算数运算符快捷键 ctrl + D 复制当前行到下一行
+ - * / % ++ //a++ 先赋值后自增,++a 先自增后赋值 --
赋值运算符运算符中有double,结果就是doubleshort + byte 运算结果是int
=关系运算符
> < >= <= == != instanceof逻辑运算符
&& || !
短路概念
a&&(++b)如果 a为false 则不会进行b自增
boolean a = false;
int b = 0;
System.out.println(a&&(++b<0));
System.out.println(b); // b=0
位运算符(了解)
& | ^ //异或:相同取1不同取0 ~ //取反 >> //右移 /2 效率极高 << //左移 *2 效率极高 >>>条件运算符
x? y:z //(三元运算符) 如果x为真则为y,否则为z扩展赋值运算符
+= -= *= /=Math工具类
Math.pow(3,2)包机制
包语句语法格式为
package pkg1.pkg2.pkg3;
包导入语句
import pkg1.*; import pkg1.pkg2.pkg3;
阅读《阿里巴巴java开发手册》



