一个java程序的基本结构大体可以分为包,类,main()主方法,标识符,关键字,语句和注释等
在java程序中,除了字符串常用的标点符号以外,代码中的标点符号必须是半角的或者在英文输入法下输入,否则报错
标识符
标识符可以简单的理解为一个名字,用来标识类名,变量名,方法名,数组名,文件名的有效字符序列
命名规则:第一个字符不能为数字,标识符不能是java的关键字和保留字,标识符区分大小写
关键字:int public this finally Boolean continue float long short throw throws return break for static new interface if double default byte case strictfp package super void switch else catch implement private final class extend volatile while synchronize char protected import transient implements defaul
整数类型: byte 8位(1字节)
short 16位(2字节)
int 32位(4字节)
long 64位(8字节)
3种表示形式:十进制,八进制,十六进制(以0X,0开头)
浮点型: float 32位
double 64位
float赋值时在结尾必须加F或f,如果不加自动定义为double
字符型: char:存储单个字符
反斜杠开头为转义字符
布尔型:Boolean 只有true和false两个值
一直不变的为常量通常被称为-final变量,在整个程序中值被赋值一次,当定义的变量为成员变量,必须赋初值
变量的有效范围:成员变量:整个类中都有效
局部变量:只在当前方法体中有效
运算符
赋值运算符: = 格式:变量类型 变量名=所赋的值
算术运算符: + (加号) -(减号) *(乘号) /(除号) %(求余)
都是二元运算符,除法运算时,0不可做除数,否则会报arithmetic exception的异常
自增和自减: ++a(--a):在使用变量之前,先加(减)1
a++(a--):在使用变量之后,加(减)1
比较运算符: > < == >= <= != 运算结果为Boolean型
逻辑运算符:&&(逻辑与) \\(逻辑或) !(逻辑非)
位运算符: ~ 按位取反 单目运算符 运算法则:将操作数二进制中的1全部修改为0,0全部修好为1
&按位与 双目运算符 运算法则:两个操作数对应位都是1结果才为1,否则为0
|按位或 双目运算符 运算法则:两个操作数对应位都是0结果才是0,否则为1
^按位异或 双目运算符 运算法则:两个操作数的二进制表示相同时结果为0,否则为1
移位运算符:<< 左移运算符 运算法则:将左边的操作数在内存中的二进制左移右边操作数指定的位数,左边移空的部分补0
>> 右移运算符 运算法则:使用方法和左移类似.如果最高位是0,左移空的位就填0,如果最高位是1,右移空位补1
>>> 无符号右移运算符 不管最高位是0还是1,左移空的高位都填入0
移位能实现整数除以或乘以2的n次方的效果,y<<2与y*4的结果相同;Y>>1的结果与Y/2的结果相同
一个数左移(右移)n位,就是将这个数乘以(除以)2的n次方
三目运算符 :java中唯一一个三目运算符,操作元有三个,第一个为表达式,其余两个为值,条件表达式成立时取第一个值,反之取第二个
boolean b=10<15?true:false
三元运算符用于判断,等价于if..else语句
boolean a; if(10<15) a=ture else a=false
运算符优先级
()>一元运算符>乘除>加减>移位运算>比较大小(<,>,>=,<=)>比较是否相等(==,!=)>&>^>|>&&>||>三元运算符>赋值运算