java基础语法
注释、标识符、关键字
注释
单行注释//…
多行注释/*… */
文档注释/**… */
标识符
大小写敏感
数据类型
强类型语言
要求变量的使用要严格符合规定,所有变量都必须先定义后才能使用。
弱类型语言
Java的数据类型分为两大类
基本类型(primitive type)
long num4 = 30L;//long类型在数字后面加L(大写!)
float num5 = 50.1F;
double num6 = 3.1415926535897;
String name = "qry";//String不是关键字,而是一个类
基本类型只有八个
引用类型(reference type)
类、接口、数组
ps.电脑32位与64位的区别:寻址能力不同。
32位电脑最大内存4GB、64位电脑内理论上可以无限大。
//整数拓展:进制 2:0b/10/8:0/16:0x
int i = 10;
int i2 = 010;//8
int i3 = 0x10;//16
System.out.println(i);
System.out.println(i2);
System.out.println(i3);
//浮点数拓展
float f = 0.1f;
double d = 1.0/10;
System.out.println(f==d);
System.out.println(f);
System.out.println(d);
输出:
false
0.1
0.1
float f1 = 131546546546f;
float f2 = f1 + 1;
System.out.println(f1==f2);
输出:
true
浮点数不能精确的表示数值,有舍入误差,不能用于比较和表示货币
- BigDecimal 数学工具类
//字符拓展
char c1 = 'a';
char c2 = '中';
System.out.println(c1);
System.out.println((int)c1);//强制类型转换
System.out.println(c2);
所有字符本质都是数字 Unicode 2字节 65536=2^16(Excel就这么长)
Unicode表:每个字符对应一个数字 范围是U0000~UFFFF
char c3 = '\u0061';
System.out.println(c3);//a
ASCII是单字节编码,Unicode最常用的是用两个字节表示一个字符
- 转义字符
转义字符 | 对应内容 |
---|---|
\n | 换行 |
\t | 水平制表符 |
//布尔值扩展
boolean flag = true;
if (flag) {}//老手
if (flag == true) {}//新手
//less is more 代码要精简易读
类型转换
强制类型转换
int i = 128;
byte b = (byte)i;//内存溢出
System.out.println(i);
System.out.println(b);
//强制转换 (类型)变量名
out:
128
-128
自动类型转换
按强弱直接转换。
注意:
-
不能对布尔值进行转换
-
不能把对象类型转换为不相干的类型
-
转换的时候可能存在内存溢出或精度问题
-
操作比较大的数的时候注意溢出问题
int money = 10_0000_0000; //JDK7新特性,数字之间可以用_分割 int years = 20; int total = money * years; //-1474836480,计算的时候溢出了 long total2 = money * yeas; //仍然溢出,因为作为int计算 long total3 = money *((long)years);
变量
变量是一块空间,它的位置是确定的,放什么东西是不确定的。
JAVA变量是程序中最基本的存储单元,其要素包括变量名,变量类型和作用域。
变量作用域
类变量
实例变量
局部变量
public class Variable{
static int allClicks = 0;//类变量 static
String str = "hello world";//实例变量:从属于对象; 方法的外面,类的里面; 布尔值默认false
public void method(){
int i = 0;//局部变量:在方法和代码块里使用;必须声明和初始化值
}
}
实例变量:布尔值默认false;除了基本类型,其他的默认值都是null
常量
final 常量名 = 常量值;
常量名一般使用大写字符。
final、static等修饰符不存在先后顺序。
变量的命名规范
所有变量、方法、类名:见名知章
类成员变量:首字母小写和驼峰原则(从第二个单词开始首字母大写)
局部变量:首字母小写和驼峰原则
常量:大写字母和下划线
类名:首字母大写和驼峰原则
方法名:首字母小写和驼峰原则
运算符
idea快捷键:ctrl + D 复制当前行到下一行
2 * 8 怎么运算最快
<<左移*2 >>右移/2
2<<3: 10–>10000
int a = 10;
int b = 20;
System.out.println(a + b);
System.out.println(""+a+b);//含有字符串,+就是字符串连接符
System.out.println(a+b+"");//从字符串往后开始连接
30
1020
30
包机制、JavaDoc
包机制:文件夹
Javadoc:将注释生成文档,生成自己的API文档
/**enter
命令行:javadoc 参数 java文件