Java基础
命名规则
- 变量命名只能使用字母、数字、$、_
- 变量名第一个字符只能使用字母、$、_
- 变量第一个字符不能使用数字
数据类型
Java有8种基本类型
类型 | 缺省值 | 位数 | 取值范围 |
---|---|---|---|
byte(位) | 0 | 8 | -2^7 ~ 2^7-1 |
short(短整数) | 0 | 16 | -2^15 ~ 2^15-1 |
int(整数) | 0 | 32 | -2^31 ~ 2^31-1 |
long(长整数) | 0 | 64 | -2^63 ~ 2^63-1 |
float(单精度) | 0.0 | 32 | -2^31 ~ 2^31 |
double(双精度) | 0.0 | 64 | -2^63 ~ 2^63-1 |
char(字符) | null | 16 | 0 ~ 2^16-1 |
boolean(布尔值) | false | 8 | true、false |
类型转换
- 自动类型转换
- 数字表示范围小的数据类型可以自动转换成范围大的数据类型,且两种数据类型兼容的情况下,就会发生自动类型转换。
- 范围:byte,short,char→int→long→float→double;(从低级类型数据转换成高级类型数据)
- 其中char 类型比较特殊,char 自动转换成 int、long、float 和 double,但 byte 和 short 不能自动转换为 char,而且 char 也不能自动转换为 byte 或 short。
- 强制类型转换
- 即强行将类型范围大的变量、数据赋值给类型范围小的类型。只有当两种数据类型不兼容,或目标类型的取值范围小于源类型时,这时就需要进行强制类型转换。
变量
如何定义变量&赋值
定义变量:数据类型 变量名
变量赋值:变量名 = 值;
public class Test{
public static void main(String[] args){
//定义变量
int i;
double d;
char c;
boolean flag;
//变量赋值
i = 1;
d = 1.0;
c = 'a';
flag = true;
}
}
变量初始化赋值
数据类型 变量名 = 值
值的整数类型默认为int、浮点类型默认为double
public class Test{
public static void main(String[] args){
int i = 1;
double d = 1.0;
char c = 'a'
boolean flag = true;
}
}
运算符
优先级 | 类 | 运算符 | 结合性 |
---|---|---|---|
1 | () | 括号运算符 | 左→右 |
1 | [] | 方括号运算符 | 左→右 |
2 | !、+(正号)、-(负号) | 一元运算符 | 右→左 |
2 | ~ | 位逻辑运算符 | 右→左 |
2 | ++、- - | 递增与递减运算符 | 右→左 |
3 | *、/、% | 算术运算符 | 左→右 |
4 | +、- | 算术运算符 | 左→右 |
5 | <<、>> | 位左移、位右移运算符 | 左→右 |
6 | >、>=、<、<= | 关系运算符 | 左→右 |
7 | ==、!= | 关系运算符 | 左→右 |
8 | &(位运算符AND) | 位逻辑运算符 | 左→右 |
9 | ^(位运算符XOR) | 位逻辑运算符 | 左→右 |
10 | 丨(位运算符OR) | 位逻辑运算符 | 左→右 |
11 | && | 逻辑运算符 | 左→右 |
12 | 丨丨 | 逻辑运算符 | 左→右 |
13 | ?: | 条件运算符 | 右→左 |
14 | = | 赋值运算符 | 右→左 |
条件控制语句
if语句
- 单分支
public class Test{
public static void main(String[] args){
if(表达式){
//表达式为真执行该代码块
}
}
}
- 双分支
public class Test{
public static void main(String[] args){
if(表达式){
//表达式为真执行该代码块
}else{
//否则执行该代码块
}
}
}
- 多分支
public class Test{
public static void main(String[] args){
if(表达式1){
//表达式1为真执行该代码块
}else if(表达式2){
//表达式2为真执行该代码块
}else{
//否则执行该代码块
}
}
}
- 分支嵌套
public class Test{
public static void main(String[] args){
if(表达式1){
if(表达式2){
//表达式2为真执行该代码块
}
//表达式1为真执行该代码块
}else{
if(表达式3){
//表达式3为真执行该代码块
}
//否则执行该代码块
}
}
}
switch
switch (表达式) {
case 常量表达式或枚举常量:
语句;
break;
case 常量表达式或枚举常量:
语句;
break;
......
default: 语句;
break;
}
循环语句
while
while(循环条件){
循环体(一条或多条语句)
}
//当判断条件不成立时停止循环
do…while
do{
循环体(一条或多条语句)
}while(循环条件);
//当判断条件不成立时停止循环
for
for(定义循环变量;循环条件;更新循环变量){
循环体(一条或多条语句)
}
//当判断条件不成立时停止循环
数组
数组特点
- Java 语言中提供的数组是用来存储固定大小的同类型元素。
- 每个数据都称为元素,每个元素有自己的唯一索引,从下标0开始。
- 数组定义后,数组的类型、长度不可改变。
数组的定义&初始化
public class Test{
public static void main(String[] args){
//数组的定义
int[] array = new array[数组长度];
double[] array1 = new array[数组长度];
char[] array2 = new array[数组长度];
//数组的初始化
int[] array3 = new array[]{元素1,元素2...};
double[] array4 = new array[]{元素1,元素2...};
char[] array5 = new array[]{元素1,元素2...};
}
}
数组的赋值&取值
public class Test{
public static void main(String[] args){
int[] array = new arrat[5];
//赋值
array[0] = 1;
//取值
int arr = array[0];
System.out.println(arr);
}
}