访问修饰符
源代码的文件名必须与公共类的名字相同,并用.java作为扩展名
JAVA严格区分大小写
方法即函数
根据JAVA语言规范,main方法必须声明为piblic
八种基本数据类型:四种整型,两种浮点类型,一种用于Unicode编码的字符单元的字符类型,一种用于表示真值的boolean类型
长整型数值有一个后缀L,十六进制前缀0x,八进制有一个前缀0,JAVA7以后,加上前缀0b表示二进制数
Java没有任何无符号类型
float类型的数值有一个后缀F,没有后缀F的浮点数值默认为double类型;浮点数值不适用于禁止出现舍入误差的金融计算当中
在Java中,利用关键字final指示常量,表示这个变量只能被赋值一次,一旦被赋值以后,就不能够再更改了,习惯上,常量名使用全大写,如果希望某个常量可以在一个类中的多个方法中使用,通常将这些常量成为类常量,使用关键字static final来设置一个类常量。注意,类常量的定义位于main方法的外部,同时,如果一个常量被声明为public,那么其他类的方法也可以使用这个常量。
/取整,%取余,当参与/运算的两个操作数都是整数时,表示整数除法,否则,表示浮点除法
自增运算符和自减运算符。前缀方式先进性加1运算;后缀方式则使用变量原来的值
Java支持三元操作符?:例如:表达式
condition?expression1:expression2
当条件condition为真时计算第一个表达式,否则计算第二个表达式
位运算包括:& || ^(异或)和~
》<<运算符表示将二进制位进行右移或左移
Java不区分变量的生命与定义
>>>运算符将用0填充高位;>>运算符用符号位填充高位,没有<<<运算符。
二元操作数运算时,优先级:double,float,long,int
Math.round方法,得到小数四舍五入后的整数。
强制类型转换时,如果待转换的数据超过了目标类型的表示范围,结果就会截断成一个完全不同的值。例如(byte)=44。只有极少数的情况才需要将布尔类型转化为数值类型,这时可使用条件表达式b?1:0。
拼接:Java语言允许使用+号连接两个字符串,这种特性通常用在输出语句中。例如System.out.println(“”“The answer is ”+answer);
任何一个Java对象都可以转换成字符串
代码点和代码单元:
代码点是指可用于编码字符集的数字。编码字符集定义一个有效的代码点范围,但是并不一定将字符分配给所有这些代码点。有效的Unicode代码点范围是U+0000至U+10FFFF。Unicode4.0将字符分配给一百多万个代码点中的96382个代码点。代码单元可以理解为字符编码的一个基本单元,最常用的代码单元是字节(即8位),但是16位和32位整数也可以用于内部处理。
块作用域:不能在嵌套的两个块中声明同名的变量
条件语句中,else子句与最邻近的if构成一组
do statement while(condition),为真循环,为假退出
检测两个浮点数是否相等需要格外小心,因为0.1无法精确地用二进制表示
for语句中或语句内部定义了一个变量,那么其作用域仅限于for循环的整个循环体
Java语言中增加了一条带标签的break语句
break是跳出整个循环,continue则是跳出当前循环
1.数组的定义
int [] a = new int [100]; //创建一个可以存储100个整数的数组。
2.for each循环
for(variable:collection) statement //循环将会遍历数组中的每个元素,而不需要下标值
3.数组初始化以及匿名数组
4.Java中,允许将一个数组变量拷贝给另一个数组变量。
5.Java数组与C++数组在堆栈上有很大不同, int [] a = new int [100];不同于 int a[100];而等同于 int *a=new int [100];
6.main函数中的arg参数:运行Java程序的同时,可以通过输入参数给main函数中的接收参数数组args[],供程序内部使用!即当你在Java命令行后面带上参数,Java虚拟机就直接把它们存放到了main方法中的参数String数组里了。