Java笔记第一章--Java基础,
Java笔记第一章--Java基础,
为了方便学习同时为了巩固知识,在这里开始记录笔记
JAVA基础
1.标识符
(1)关键字
- 基本类型
boolean(布尔型) byte(字节型) char(字符型) double(双精度) float(浮点) int(整形) long(长整形) short(短整型)
- 程序控制语句
break(跳出循环) continue(继续) return(返回值) do(运行) while(循环) if(如果) else(反之) for(循环) instanceof(实例) switch(开关) case(分支) default(默认)
- 访问控制
private(私有的) protected(受保护的) public(公共的)
- 类、方法和变量修饰符
class(类) extends(继承) abstract(抽象) interface(接口) implements(实现) final(不可改变) native(本地) new(创建) static(静态) strictfp(严格) synchronized(同步) transient(短暂) volatile(易失)
- 变量引用
super(父类) this(本类) void(无返回值)
- 错误处理
try catch(处理异常) finally(始终执行) throw(抛出异常对象) throws(声明异常)
- 包相关
package(包) import(引入)
(2)用户定义标识符
- 以字母、下划线或¥开头的字符序列
- 先定义后使用,注意大小写
- 不与关键字同名
- 不与具有特定意义的值同名
- 使用简单易懂的名字提高程序可读性
2.变量
3.基本数据类型
(1)布尔型 boolean
通过boolean声明,只允许取值true和false。与C/C++可用0表示false用大于0的值表示true不同,Java不允许数值类型和布尔类型间相互转换。
(2)整数型 byte short int long
- 十进制整形 102,-130,0
- 八进制整形(以数字0开头) 0102
- 十六进制整数(以0x开头) 0x0102
默认整数类型为Int,给long型赋值时要在数字后加L 如130L
Java中不能定义无符号数(unsigned),有需要时可以通过位运算符得到
类型 | 占用储存空间 / B | 表示范围 |
byte | 1 | -128 ~ 127 |
short | 20 | -2E15 ~ (2E15) -1 |
int | 4 | -2E31 ~ (2E31) -1 |
long | 8 | -2E63 ~ (2E63)-1 |
(3)浮点型
默认浮点数类型为double,对float类型变量赋值时必须添加 F 或者 f 如float a=5.5f类型 | 占用储存空间 / B | 表示范围 |
float | 4 | -3.4E38 ~ 3.4E38 |
double | 8 | -1.7E308 ~ 1.7E308 |
(4)字符型
用单引号 ' ' 括起来的单个字符,表示字母、数字、标点符号以及其他特殊字符,如char ch='w'。
Java基于Unicode表示字符,每个字符占2B,因此可以十六进制编码形式表示,如char uc='\u0061'。
回车 | \r | 换行 | \n |
Tab | \t | 换页 | \f |
退格 | \b | 单引号 | \' |
双引号 | \'' |
Java定义了一些用来格式化输出的特殊字符,这些转义字符要在字符串中处理。
(5)基本类型转换
容量从小到大 byte,short,char<int<float<double (byte , short , char3种类型间不会相互转换,计算时首先转为 int)(6)常量
也被称为字面量,用来表示一个固定值。与字符型一样,也可以用Unicode字符表示。
final 是保留字,可以修饰变量声明,一旦将变量用 final 修饰,则称该变量为常变量,即它不能被重新赋值。
4.运算符和表达式
(1)算术运算符
- 双目运算符
+ 加 - 减 * 乘 / 除 % 求余 - 单目运算符
+ 取正 ++ 自增 - 去负 -- 自减
整数被0除或对0取余属于非法运算。
两个运算变量的计算结果的符号与求余运算符左侧的运算变量符号一致。(多种类型混合计算时,系统自动转换成这几个类中容量最大的再进行计算)
单目运算符区分方法是运算符在操作数的前面还是在后面,在前面(++i)则先自增、自减,在后面(i++)则先参与运算,再自增、自减。
(2)关系运算符
== | 等于 | != | 不等于 |
< | 小于 | <= | 小于等于 |
> | 大于 | >= | 大于等于 |
instanceof | 对象运算符 |
关系运算符两边的数据类型应一致。
表达式的结果为布尔型,即关系式成立结果为true,不成立结果为false.
(3)逻辑运算符
运算符 | 用法 | 含义 | 结合方向 |
&& | a && b | 与 | 左到右 |
|| | a || b | 或 | 左到右 |
! | ! a | 非 | 右到左 |
逻辑运算符的操作数必须是boolean型数据。
如 flag =(i<3) && (i>4); 逻辑运算符左右是括号扣起来的比较运算符,比较运算符的结果是boolean型数据。
操作数a | 操作数b | a && b | a || b | ! a |
1 | 1 | 1 | 1 | 0 |
1 | 0 | 0 | 1 | 0 |
0 | 1 | 0 | 1 | 1 |
0 | 0 | 0 | 0 | 1 |
(4)赋值运算符
赋值是双目运算符=,将右边的表达式赋给左边的变量。
(5)位运算符
主要针对二进制
& | 与 | ! | 非 |
| | 或 | ^ | 异或 |
<< | 移位运算符 | …… | …… |
(6)表达式
运算符、常量和变量遵循规则的组合。
表达式返回值的类型依赖于表达式里的元素。
(7)运算符优先级
同一表达式中多个运算符被执行的次数,表达式求值时,按运算符的优先级由高到低的次序执行。
优先级 | 设计的运算符 | j合性 |
1 | 括号 [] . ()(函数调用) | |
2 | ! ~ ++ -- +- ()(类型转换) new | 从右到左 |
3 | * / % | 从左到右 |
4 | + - | 从左到右 |
5 | << >> >>> | 从左到右 |
6 | <<= >>= instanceof | 从左到右 |
7 | == != | 从左到右 |
8 | & | 从左到右 |
9 | ^ | 从左到右 |
10 | | | 从左到右 |
11 | && | 从左到右 |
12 | || | 从左到右 |
13 | ?: | 从右到左 |
14 | =+= -= *= /= %= ^= <<= >>= >>>= | 从右到左 |
5.语句
(1)if语句
if - then是最基本的控制流语句,根据测试条件的结果选择执行流程。测试条件可以是逻辑表达式也可以是一个值,执行分支取决于逻辑表达式的结果。
if 条件 { //只有当测试条件返回值为true时'then'执行下面代码
代码
}
与其类似的有 if - then - else 选择语句,这里提供了 if 测试为false时的情况。
if 条件 { //测试值返回值为true时执行代码1
代码1
}
else { //返回值为false时执行代码2
代码2
}
(2)switch语句
switch语句有多个可能的执行路径,switch的测试路径可以是byte , short , char , int 等基本类型,也可以是枚举类型、String类和特殊的原生类型包装类。
switch(分支表达式) {
case 常量表达式 1:...
brake;
case 常量表达式 2:...
brake;
case 常量表达式 n:...
brake;
default:
}
计算分支表达式的值,如果表达式的值和后面某个case值相同,就执行case里的语句,直到遇到break。如果没有遇到相同的值就执行default分支。
若没有break语句则swtich会按顺序执行多个case,而不管case标签的表达式是否符合条件,直到遇到一个break语句。
(3)for语句
for语句经常用于在一定范围内遍历,通过循环得到遍历的效果。
for(起点--初始化语句;终点--结束表达式;用于标记的叠加次数--自增表达式){
每次循环执行的代码
}
(4)while和do - while语句
while语句当测试条件为true时执行重复执行代码块直到false时退出。若第一次为false则不执行循环体内任何动作;若永远为true那就进入死循环。
while(测试条件){
代码块
}
do - while语句与while语句不同其while语句在代码块后面
do {
代码块
}while(测试条件)
与while语句不同,do-while语句先执行后判断,即使第一次判断为false,do - while语句至少会执行一次代码块;而while语句中若第一次while为false代码块执行0次。
(5)break语句和continue语句
break语句是终止某个语句块的执行,使应用程序从该语句块后的第一个语句处开始执行。break语句可以结束for、while、do-while循环。
continue语句忽略for、while、do - while的当前循环,它的作用是跳过某个循环语句块的一次执行,使应用程序直接开始下一次循环测试。
(6)return语句
从当前方法退出,控制流返回到方法调用处。即结束当前方法,运行该方法的下一方法。
return语句有两种形式:有返回值、无返回值。
返回一个值时,可以在return后面把值放进去,如r:eturn 1;或者放一个表达式计算,如:return ++count。
return返回的数据类型必须和方法声明的返回值的类型一致或者兼容(void时return不需要返回值)。
相关文章
- 暂无相关文章
用户点评