所有的标识符都应该以字母(A-Z或者a-z),美元符($)、或者下划线(_)开始
String Ahello = "World"; String hello = "World" ; String $hello = "World" ; String _hello = "World" ;
首字符之后可以是字母(A-Z或者a-z),美元符($)、下划线(_)或数字的任何字符组合
不能使用关键字作为变量名或方法名
标识符是大小写敏感的
合法标识符举例:age、$salary._value、__1_value
非法标识符举例:123abc、-salary、#abc
可以使用中文命名,但是一般不建议这样去使用,也不建议使用拼音,很Low
public class HelloWorld { public static void main(String[] args) { System.out.println("hello,world"); String 王者荣耀="百星王者"; //String 王者荣耀=“倔强青铜"; System.out.println(王者荣耀); } }
java关键字:
基本类型
引用类型
拓展
整数拓展
//进制:二进制0b 十进制 八进制0 十六进制0x int i = 10; int i2 = 010;//八进制0 ---->结果为8 int i3 = 0x10; //十六进制0x ---->结果为16
浮点数拓展
//需要计算不能有误差的话使用BigDecimal 数学工具类 //float 有限 离散 舍入误差 大约 接近但不等于 //double //最好完全使用浮点数进行比较 //最好完全使用浮点数进行比较 //最好完全使用浮点数进行比较 float f = 0.1f; //0.1 double d = 1.0/10; //0.1 //f是不等于d的 float d1 = 23131312312312313f; float d2 = d1 + 1; //d1是等于d2的
字符拓展
char c1 ='a'; char c2 ='中'; System.out.println(c1); System.out.println((int)c1);//强制转换 结果为97 System.out.println(c2); System.out.println((int)c2);//强制转换 结果为20013 //所有的字符本质还是数字 //Unicode编码 'a' 97 'A' 65 '0' 48
布尔值扩展
boolean flag = true; if(flag==true){}; if(flag){}; //这两个if表达一个意思
转意字符
\n 换行符 \t 制表符 \' 普通的单引号 \\ 普通的反斜杠 \" 普通的双引号
类型转换
不能对布尔值进行转换
运算中,不同类型的数据先转化为同一类型,然后进行运算
byte < short,char < int < long < float < double
强制类型转换:
大容量转换成小容量
需要加强制类型转换符,程序才能编译通过
但是在运行阶段可能存在内存溢出或损失精度,所以谨慎使用
//操作比较大的数的时候,注意溢出问题 //JDK7以后新特性,数字之间可以用下划线分割 int money = 10_0000_0000; int years = 20; int total = money*years; //输出total结果为-1474836480 ,计算的时候溢出了
算术运算符: +,-, *,/,%,++,--
赋值运算符=
关系运算符:>,<,>=,<=,==,!= ,instanceof
逻辑运算符: &&,||,!
位运算符: &,|,^,,~,>>,<<, >>>(了解! ! ! )
条件运算符?∶
扩展赋值运算符:+=,-=,*=,/=
//位运算 /* A= 0011 1100 B = 6000 1101 —————————————————————————————————————————————————————— A&B = 0000 1100 A|B = 0011 1101 A^B = 0011 0001 ~B = 1111 0010 2*8 = 16 2*2*2*2 效率极高! ! ! << *2 左移 >> /2 右移 0000 0000 0 0000 0001 1 0000 0010 2 0000 0011 3 0000 0100 4 0000 1000 8 0001 0000 16 */ //三元运算符 //x ? y : z //如果x==true,则结果为y,否则结果为z int score = 80; String type = score <6?"不及格":"及格"; System.out.println(type);
为了更好地组织类,Java提供了包机制,用于区别类名的命名空间。
包语句的语法格式为:
package pkg1[. pkg2[. pkg3...]];
一般利用公司域名倒置作为包名;如:www.baidu.com 写成com.baidu.www
为了能够使用某一个包的成员,我们需要在Java程序中明确导入该包。使用"import"语句可完成此功能
import package1[.package2...].(classname|*);
javadoc命令是用来生成自己API文档的
参数信息
javadoc -encoding UTF-8 -charset UTF-8 Doc.java