type
status
date
slug
summary
tags
category
icon
password
复习(预习)Java基础
语法基础
变量与常量
变量:指值可以变的量。
声明过程:
- 标识符可以由大小写字母、数字、下划线(_)和美元符号($)组成,但是不能以数字开头。
- 变量不能重复定义,大小写敏感,比如A和a就是两个不同的变量。
- 不能有空格、@、#、+、-、/ 等符号。
- 应该使用有意义的名称,达到见名知意的目的(一般我们采用英文单词),最好以小写字母开头。
- 不可以是 true 和 false。
- 不能与Java语言的关键字或是基本数据类型重名

常量:
使用final修饰
类型转换
类型转化:
- 显示转化:int x = (int)'A';
- 隐式转化:double x = 12;
整数类型:默认int
- byte 字节型 (8个bit,1个字节)范围:-128~+127
- short 短整形(16个bit,2个字节)范围:-32768~+32767
- int 整形(32个bit,4个字节)范围:-2147483648 ~ +2147483647
- long 长整形(64个bit,8个字节)
范围:-9223372036854775808 ~ +9223372036854775807
其中需要在数字后面加上大写或是小写的L。
- 十六进制:ox开头。
- 八进制:0开头。
正码反码补码的知识,java中,运用补码来表示,会导致范围多一个。
隐式类型转换:从存储范围小的类型到存储范围大的类型。
浮点类型:默认double
- float 单精度浮点型 (32bit,4字节)
float f = 9.9F;常量后面添加大写或小写的F来表示这是一个
float
类型的常量值- double 双精度浮点型(64bit,8字节)
隐式类型转换规则:byte→short(char)→int→long→float→double
字符类型:char
ASCII:A是65
布尔类型
- boolean :true or false
运算符
运算符类型 | 运算符 | 功能描述 | 示例 |
算术运算符 | +, -, *, /, % | 基本的数学运算 | A + B = 30 |
自增自减 | ++, -- | 变量值增加或减少1 | A++, --A |
复合赋值 | +=, -=, *=, /=, %= | 运算并赋值的简写形式 | A += B |
关系运算符 | >, <, >=, <=, ==, != | 比较两个值的关系 | A > B |
逻辑运算符 | &&, ||, ! | 逻辑与、或、非运算 | A && B |
运算符优先级
优先级 | 运算符 | 结合性 |
1 | ( ) | 从左向右 |
2 | ~ - + (强制类型转换) ++ -- | 从右向左 |
3 | * / % | 从左向右 |
4 | + - | 从左向右 |
5 | << >> >>> | 从左向右 |
6 | > < >= >= | 从左向右 |
7 | == != | 从左向右 |
8 | & | 从左向右 |
9 | ^ | 从左向右 |
10 | | | 从左向右 |
11 | && | 从左向右 |
12 | || | 从左向右 |
13 | ? : | 从右向左 |
14 | = += -= *= /= %= &= |= ^= <<= >>= >>>= | 从右向左 |
自加自减实例
- 先出结果再自加
- 先自加再出结果
- 自增自减运算符的优先级与正负号等价
位运算
位运算符包括:
- & (按位与):两个位都为1时,结果为1,否则为0
- | (按位或):两个位都为0时,结果为0,否则为1
- ^ (按位异或):两个位相同为0,不同为1
- ~ (按位取反):0变1,1变0
- >> (右移):各二进制位右移若干位,高位补0
- << (左移):各二进制位左移若干位,低位补0
- >>> (无符号右移):各二进制位右移若干位,高位补0
示例:
注意事项:
- 位运算的优先级较低,使用时建议加括号
- 移位运算的位数不能超过数据类型的总位数
- 无符号右移>>>只对负数的处理与>>不同,对正数处理相同
关系运算符
关系运算符用于比较两个值之间的关系,返回布尔值(true/false)。主要包括:
- == : 判断两个值是否相等
- != : 判断两个值是否不相等
- > : 判断左边值是否大于右边值
- < : 判断左边值是否小于右边值
- >= : 判断左边值是否大于等于右边值
- <= : 判断左边值是否小于等于右边值
使用注意事项:
- 浮点数比较时要注意精度问题,不建议直接使用==比较
- 引用类型的比较应使用equals()方法而不是==
逻辑运算符
逻辑运算符用于组合多个条件,返回布尔值。主要包括:
- && (与):两个条件都为true时,结果为true
- || (或):两个条件至少有一个为true时,结果为true
- ! (非):取反运算,true变false,false变true
短路运算:
- &&:第一个条件为false时,不再判断第二个条件
- ||:第一个条件为true时,不再判断第二个条件
优先级:
- ! 的优先级最高
- && 优先级高于 ||
- 建议使用括号明确运算顺序
三目运算符
三目运算符(也称为条件运算符)是Java中唯一的三元运算符,其语法为:
运算规则:
- 如果条件表达式的结果为true,则返回表达式1的值
- 如果条件表达式的结果为false,则返回表达式2的值
流程控制
代码块与作用域
代码块是使用大括号 {} 括起来的一组语句。它定义了一个新的作用域,用于控制变量的可见性和生命周期。
作用域规则:
- 变量只在声明它的代码块内可见
- 内部代码块可以访问外部代码块的变量
- 外部代码块不能访问内部代码块的变量
- 同一作用域内不能声明同名变量
注意事项:
- 代码块结束后,其中声明的变量会被销毁
- 方法参数的作用域是整个方法体
- 循环和条件语句的代码块也会创建新的作用域
- 类的成员变量的作用域是整个类
选择结构
Java中的选择结构主要包括if语句和switch语句,用于根据不同条件执行不同的代码块。
if语句
基本形式:
多重if语句:
switch语句
基本语法:
注意事项:
- switch表达式的类型只能是byte、short、int、char、枚举类型、String类型(Java 7及以上版本)
- case语句中的值必须是常量表达式
- 如果省略break语句,会发生"贯穿"现象
- default分支是可选的,当没有case匹配时执行
循环结构
Java提供了三种基本的循环结构:while循环、do-while循环和for循环。
while循环
基本语法:
执行过程:
- 先判断条件是否为true
- 如果为true,执行循环体,然后重新判断条件
- 如果为false,跳出循环
do-while循环
基本语法:
特点:
- 循环体至少执行一次
- 先执行循环体,再判断条件
for循环
基本语法:
执行过程:
- 首先执行初始化部分
- 判断条件是否为true
- 为true时执行循环体,然后执行更新部分
- 为false时结束循环
循环控制:
- break:立即跳出当前循环
- continue:跳过本次循环剩余代码,继续下一次循环
循环嵌套:
- 循环可以嵌套使用
- 内层循环每执行一遍,外层循环才会继续
- break和continue默认只对最内层循环有效
- Author:NotionNext
- URL:http://preview.tangly1024.com/article/java01/1
- Copyright:All articles in this blog, except for special statements, adopt BY-NC-SA agreement. Please indicate the source!