关键字java
对于关键字的概述:程序员
Java的关键字有叫作保留字,它对Java的编译器有特殊的意义,他们用来表示一种数据类型,或者表示程序的结构等,关键字不能用做变量名、方法名、类名、包名和参数。函数
常见关键字:this
1.用于访问权限修饰符的关键字有:public, private, protected。spa
2.用于定义类,函数,变量修饰符的关键字有:final, abstract, static, synchronized。3d
3.用于定义类与类之间的关系的关键字有:extends, implements。code
4.用于定义创建实例及引用实例,判断实例的关键字有:new, this, super, instanceof。对象
5.用于处理异常的关键字有:try, catch, finally, throw, throws。blog
6.用于处理包的关键字有:package, inport。接口
7.其余修饰符关键字有:native, strictfp, transient, volatile, assent。
标识符的概述:
Java语言中,对于变量,常量,函数,语句块也有名字,咱们通通称之为Java标识符。
经常使用的标识符:
1.用于定义数据类型的关键字有:class, interface, byte, short, int, long, float, double, char, boolean, void。
2.用于定义数据类型值的关键字有:true, false, null。
3.用于定义流程控制类型的关键字有:if, else, switch, case, default, while, do, for, break, continue, return。
标识符必需要遵照如下规则:
1.标识符是由26个英文字符大小写(a~zA~Z)、数字(0~9)、下划线(_)和美圆符号($)组成。
2.不能以数字开头,不能是关键字
3.严格区分大小写
4.标识符能够为任意长度
标识符的命名规范:
1.包名:多个单词组成时全部字母小写(例如:sutdent com.itcast)
2.类名和接口:多个单词组成时全部单词首字母大写(例如:HelloWorld)
3.变量名和函数:多个单词组成时第一个单词首字母小写,其余单词首字母大写(例如:helloWorld)
4.常量名:多个单词组成时,字母所有大写,多个单词之间使用_分隔(例:INTEGER_CACHE)
注意:只是为了增长规范性、可读性而作的一种约定,标识符在定义的时候最好见名知意,提升代码阅读性。
注释的做用:
经过注释提升程序的可读性,是java程序的条理更加清晰,易于区分代码行与注释行。另外一般在程序开头加入做者,时间,版本,要实现的功能等内容注释,方便后来的维护以及程序员的交流
注释的种类:3种 (xxxx 表明注释内容)
1.单行注释:用 // 表示 例如 // xxxx
2.多行注释:用 /* */ 表示 例如 /* xxxx */
3.文档注释:用 /** */ 例如: /**xxxx */
1.常量
常量的概述:
常量是指在运行过程当中其值不能改变的量
常量的分类:
1>整型常量:全部的整数 例如:1 2 3 4
2>小数常量:全部的小数 例如 1.1 2.2 3.3
3>布尔常量:只有true和false
4>字符常量:只能用单引号引发来的单个字符 例如 ‘a’'b' 'c'
5>字符串常量:只能用双引号引发来的字符序列 例如 "a" "b" "c"
6>null常量:只有一个值null;
整数的变现形式:
1>二进制:由0和1两个数字组成
2>八进制:由0-7数字组成,为了区分与其余进制的数字区别,开头都是以0开始
3>十进制:都是由0-9数字组成,不能以0开头
4>十六进制:由0-9和A-F组成,为了区分开其余数字的区别,开头都是以ox开始
2.变量
变量的概述:
用于存储可变数据的容器
变量的特色:
1>必需要有大小
2>存储必定格式的可变数据
3>必需要有名字
变量的数据类型
1>整型
byte 表明一个字节的大小 8bit 2(8) -128~127 例如:byte a = 1;
short 表明两个字节的大小 16bit 2(16) -2(15)~2(15)-1
int 表明四个字节的大小 32bit 2(32) -2(31)~2(31)-1 例如:int a = 12;
long 表明八个字节的大小 64bit 2(64) -2(63)~2(63)-1 例如:long a = 123;
若是一个数值没有采起特殊的处理,那么该整数默认的类型是int。
可使用数值后面添加L或小写L改变默认的整数类型。
2>浮点型
float 表明四个字节的大小 32bit 例如:float a=10.23f;
double 表明八个字节的大小 32bit 例如:double a=10.23;
java程序中全部的小数默认的类型是double类型,因此须要使用特殊的符号改变默认的小数类型。
3>字符型
char 表明两个字节的大小 16bit 2(16) 例如:char a = 'f';
原理:将字符映射为码表中对应的十进制数据加以存储。
4> 布尔型
boolean 占一个字节。只有true与false两个值。
变量的声明格式:数据类型 变量名字1 , 变量名字2 ,……变量名字n ,;
1. 自动类型转换(也叫隐式类型转换)
Java内部其实作了工做就是自动将数值进行了类型提高,就叫作自动类型转换(也叫隐式类型转换)
要实现自动类型的转换,须要知足两个条件,第一两种类型彼此兼容,第二目标类型取值范围必须大于源类型。全部的数字类型,包括整形和浮点型彼此均可以进行转换
例如:
int*double--->double
char*int--->int
long*float--->float
2. 强制类型转换(也叫显式类型转换)
当两种类型彼此不兼容,或者目标类型取值范围小于源类型(目标是byte源是int)
没法自动转换,此时就须要进行强制类型转换。
例如:
int a=128;
byte b=(byte)a;
System.out.println(b);//-128 此时的强转已经形成了数值的不许确
算术运算符
正负号(+,-)
除法
%取模
求余数
取模的正负取决与被除数
自增(++)
自增在前:先自增完毕,再运算整个表达式,语句分号前面的都是运算表达式;
自增在后:先运算完整个表达式(分号前面的都是表达式),再进行自增;
备注:参与自增运算的操做数据每次会加1.
结论:
若是运算符在变量的前面,则该变量自增1或者自减1,而后返回的是变量的新值,如
果运算符在变量的后面,则变量也会自增或者自减1,可是返回的是变量原来的值。++在前就是先运算,再取值,++在后就是先取值,再运算。
赋值运算符
运算符 |
运算 |
范例 |
结果 |
= |
赋值 |
a=3,b=2 |
a=3,b=2 |
+= |
加等于 |
a=3,b=3;a+=b; |
a=5,b=2; |
-= |
减等于 |
a=3,b=2,a-=b; |
a=1,b=2; |
*= |
乘等于 |
a=3,b=2,a*=b; |
a=6,b=2 |
/= |
除等于 |
a=3,b=2,a/=b; |
a=1,b=2; |
%= |
模等于 |
a=3,b=2,a%=b; |
a=1,b=2 |
比较运算符
比较运算符比较的两边操做数,结果都是boolean的,只有true和false两种结果。
运算符 |
运算 |
例子 |
结果 |
== |
相等于 |
4= =3 |
false |
!= |
不等于 |
4!= 3 |
true |
< |
小于 |
4 < 3 |
flase |
> |
大于 |
4>3 |
true |
<= |
小于等于 |
4<=3 |
false |
>= |
大于等于 |
4>=3 |
true |
Instanceof |
检查是不是类的对象 |
"hello"instanceof String |
true |
使用比较运算符的时候,要求两种数据类型必须一致。
逻辑运算符
逻辑运算符用于对boolean型结果的表达式进行运算,运算的结果都是boolean型。咱们的比较运算符只能进行一次判断,对于对此判断无能为力,那么逻辑运算符就能够经将较运算符链接起来。
逻辑运算符用于链接布尔型表达式,在Java中不能够写成3<x<6,应该写成x>3 & x<6 。
“&”和“&&”的区别:单与时,左边不管真假,右边都进行运算;双与时,若是左边为真,右边参与运算,若是左边为假,那么右边不参与运算。
“|”和“||”的区别同理,双或时,左边为真右边不参与运算。
“ ^ ”异或与“|”或的不一样之处是:当左右都为true时,结果为false。
& 与 | 或 ^ 异或 ! 非
位运算符
位运算符
|
运算符含义
|
& |
与(AND) |
| |
或(OR) |
^ |
异或 |
~ |
取反 |
移位操做符
位运算符 |
||
运算符 |
运算 |
范例 |
<< |
左移 |
3 << 2 = 12 --> 3*2*2=12 |
>> |
右移 |
3 >> 1 = 1 --> 3/2=1 |
>>> |
无符号右移 |
3 >>> 1 = 1 --> 3/2=1 |
& |
与运算 |
6 & 3 = 2 |
| |
或运算 |
6 | 3 = 7 |
^ |
异或运算 |
6 ^ 3 = 5 |
~ |
反码 |
~6 = -7 |
位运算符的细节 |
|
<< |
空位补0,被移除的高位丢弃,空缺位补0。 |
>> |
被移位的二进制最高位是0,右移后,空缺位补0; 最高位是1,空缺位补1。 |
>>> |
被移位二进制最高位不管是0或者是1,空缺位都用0补。 |
& |
二进制位进行&运算,只有1&1时结果是1,不然是0; |
| |
二进制位进行 | 运算,只有0 | 0时结果是0,不然是1; |
^ |
任何相同二进制位进行 ^ 运算,结果是0;1^1=0 , 0^0=0
不相同二进制位 ^ 运算结果是1。1^0=1 , 0^1=1 |
三元运算符
格式
(条件表达式)?表达式1:表达式2;
若是条件为true,运算后的结果是表达式1;
若是条件为false,运算后的结果是表达式2;
例如:
int x = 1;
int y = 2;
int z;
z = x > y ? x : y;
System.out.println(z); //2
运算符的优先级与结合性
例如:
、
转义字符 |
名称 |
Unicode |
\b |
Backspace (退格键) |
\u0008 |
\t |
Tab (Tab键盘) |
\u0009 |
\n |
Linefeed (换行) |
\u000A |
\r |
Carriage Return(回车) |
\u000D |
\\ |
Backslash (反斜杠) |
\u005C |
\' |
Single Quote (单引号) |
\u0027 |
\" |
Double Quote (双引号) |
\u0022 |
\r 表示接受键盘输入,至关于按下回车。
\n 表示换行。
\t 制表符,至关于Table键
\b 退格键,至关于Back Space
\’ 单引号
\’’ 双引号
\\ 表示一个斜跨