一、Java的基本语法
1.类的定义格式:
//定义一个类的格式
//注意class不能写成Class,否则会报错
修饰符 class classname{
}
2.注释:
int i = 1; //单行注释,使用//
-----------------------------
int i = 1;
i += 1;/*定义i等于1,i=i+1
此时i=2^/ 多行注释使用/*.....*/
------------------------------
以/**为开头,*/为结尾的是文档注释
/**
.....
....
*/
3.标识符:
标识符可以由字母、数字、下划线(_)和美元符号组成,但不能以数字开头,不能是java中的额关键字
4.关键字:
(1)所有关键字都是小写
(2)不能使用关键字命名标识符
(3)const 和 goto 是保留关键字,在程序中不能来作为自定义的标识符
(4)true、false 和 null虽然不是关键字,但具有特殊意义,不能作为标识符
5.常量:
(1)整型 : int
(2)浮点型:float / double
(3)字符常量 : 'a ',可以是英文字母,数字,标点符号和转义字符,但须有''引起
(4)布尔常量:true / false
(5)null常量:null
二、Java的变量
1.变量的定义:
int x = 3,y;
y = x + 3;
2.变量的数据类型:
(1)整型 :
类型 | 占用空间 | |
byte | 8位 | |
short | 16位 | |
int | 32位 | |
long | 64位 |
(2)浮点型:float / double
(3)字符变量 : 'a ',须由''引起
(4)布尔变量:true / false
3。变量的类型转换:
byte a = 3;
int b = a;//自动类型转换
----------------------
byte a = 3;
int b;
b = (int)a;//强制类型转换
4.变量的作用域:
变量需要在它的作用范围内才可以被使用,这个作用范围就是变量的作用域
三、Java中的运算符
1.算术运算符:
运算符 | 运算 | 范例 | 结果 |
+ | 正号 | +3 | 3 |
- | 负号 | b=1;-b; | -1 |
+ | 加 | 8+1 | 9 |
- | 减 | 9-1 | 8 |
* | 乘 | 9*1 | 9 |
/ | 除 | 9/2 | 4.5 |
% | 取模 | 7%2 | 1 |
++ | 自增(前) | a=1;b=++a; | a=2;b=2 |
++ | 自增(后) | a=1;b=;a++; | a=2;b=1 |
-- | 自减(前) | a=1;b=--a; | a=0;b=0 |
-- | 自减(后) | a=1;b=a--; | a=0;b=1 |
2.赋值运算符:
运算符 | 运算 | 范例 | 结果 |
= | 赋值 | a=2 | a=2 |
+= | 加等于 | a=1;a-=1l | a=2 |
-= | 减等于 | a=1;a-=1; | a=0 |
*= | 乘等于 | a=1;a*=1; | a=1 |
/= | 除等于 | a=1;a/=1; | a=1 |
%= | 模等于 | a=3;a%=2; | a=1 |
3.比较运算符:
运算符 | 运算 | 范例 | 结果 |
== | 等于 | 4==3 | false |
!= | 不等于 | 1!=2 | true |
< | 小于 | 1<3 | true |
> | 大于 | 1>3 | false |
<= | 小于等于 | 4<=3 | false |
>= | 大于等于 | 4>=3 | true |
4.逻辑运算符:
运算符 | 运算 |
& | 与 |
| | 或 |
^ | 异或 |
! | 非 |
&& | 短路与 |
|| | 短路或 |
四、选择结构语句:
1.if条件语句:
if (条件语句){
//代码块
}
2.if..else语句:
if (判断条件){
//执行语句1
}
else{
//执行语句2
}
3.if...else if..else语句:
if (判断条件){
//执行语句1
}
else if(判断条件){
//执行语句2
}
else{
//执行语句3
}
4.三元运算符:
判断条件?表达式1:表达式2
//但判断条件成立时,则最后结果为表达式1的值,否则就为表达式2的值
5.swtich语句:
switch(表达式){
case 目标值1:
//执行语句
break;
case 目标值2:
//执行语句
break;
case 目标值3:
//执行语句
break;
default:
//执行语句
break;
五、循环结构语句
1.while循环语句:
while(循环条件){
//执行语句
}
2.do..while循环:
do{
//执行语句
}while(循环条件)
3.for循环:
for(初始化表达式;循环条件;操作表达式){
//执行语句
}
4.跳转语句:break,continue
break:跳出循环
continue:跳出本次循环并执行下一次循环
六、方法
1.定义:
修饰符 返回值类型 方法名(参数类型,参数名.....)
{
return 返回值;
}
2.方法的重载:
(1)方法的重载是在一个类中可以定义多个方法名相同,但参数不同的方法。调用时,会根据不同参数自动匹配对应的方法。
(2)重载的方法,实际是完全不同的方法,仅仅是名称相同。
public class TestMethod06{
public static void main(String[] args){
//10+20
int sum = add(10,20);
System.out.println(sum);
//10+20+30
System.out.println(add(10,20,30));
//20+40+60+80
System.out.println(add(20,40,60,80));
//9.9+0.1
System.out.println(add(9.9,0.1));
}
//定义一个方法,两个数相加:
public static int add(int num1,int num2){
return num1+num2;
}
//定义一个方法,三个数相加
public static int add(int num1,int num2,int num3){
return num1+num2+num3;
}
//定义一个方法,四个数相加
public static int add(int num1,int num2,int num3,int num4){
return num1+num2+num3+num4;
}
//定义一个方法:两个数相加,两个double类型的数相加
public static double add(double num1,double num2){
return num1+num2;
}
}
//同一个类中可以存在方法名相同的多个方法
//方法名相同,形参列表不同,这些方法就构成了方法的重载
//方法名(eg:add) 形参列表(eg:int num1,double num2)
七、数组
1.数组的创建:有三个方法
int[] array1 = new int[10];//前面的int[]为数组的类型,后面的int[10]为其能够存放的大小,array1为其数组名称
int[] array2 = {1,2,3,4,5};
int[] array3 = new int[]{1,2,3,4,5};
2.初始化数组:
int [] array = new int [ 10 ];//动态初始化:,只定义数组中元素的个数,并未给里面的元素进行赋值
---------------------------------------------------------------------------------------
int[] array1 = {0,1,2,3,4,5,6,7,8,9};//静态初始化, 后面的数据必须与前面定义的数据类型一致
---------------------------------------------------------------------------------------
int [] array ;
array = new int []{ 10 , 20 , 30 };// 初始化能分为两步,分步的第二步中new int[]不能省略
3.遍历数组:
(1)for循环打印数组:
public class Test {
public static void main(String[] args) {
int[] array = {1,2,3,4,5};
for (int i = 0; i < array.length; i++) {
System.out.print(array[i]+" ");
}
}
}
4.二维数组:一个一维数组中的每个元素都是一维数组,这样就构成了二维数组
int[][] arr = { {0, 0, 0, 0, 0, 0}, {1, 1, 1, 1, 1, 1},
{2, 2, 2, 2, 2, 2}, {3, 3, 3, 3, 3, 3}
};
(1)二维数组的元素个数 = 二维数组中一维数组的个数 = arr.length
(2)二维数组的每个元素是一维数组,所以如果需要得到每个一维数组中的元素,还需要再遍历一维数组
数据类型[][] 数组名 = {{值1, 值2, ..}, {值1, 值2, ..}, {值1, 值2, ..}};
//初始化