1.算术运算符
+ ,- ,* , / , %
不同的地方:
/ 两个整数相除 只能得到整数 10/3=3
有小数参与运算的时候才能得到小数
% 10%3=1 -10%3=-1 4%5=4
10%2=0 11%2=1
2.++ --
++
int i=10;
i++; //相当于于 i+1
++在前:先自增再参与其他运算
++在后:先参与其他运算,后自增
3.赋值运算符
= : 把右边的值赋值给左边
数学中
a=10;
b=10
a=b;//a和b相等
java中
int a=10;
int b=20;
a=b; //把b的值赋值给a
+= ,-= ,*=,/=,%=
+=: a+=3; 相当于:a=(a的数据类型)(a+3);
a-=1; 相当于:a=a-1;
a*=2 相当于:a=a*2;
4.关系运算符
== , != , >= ,<= , >,< 结果都是boolean
==: 比较左右两边的值是否相等 结果是:boolean
> :比较左边是否大于右边 结果是:boolean
数学中:
a=10;
b=20;
a<b;// a比b小
java中:
int a=10;
int b=20;
syso(a<b); //判断a是否小于b
数学中:
a=10;
b=20;
c=30;
a<b<c
5.逻辑运算符
&&,|| ,! , & ,| , ^ 异或
&&:并且
|| : 或者
!:非 ,就是取反
^:判断是否是异性恋
判断下面这句话的真假:
君哥是黑马最纯洁的老师并且君哥是黑马最帅 假的
int a=10;
int b=20;
a<b&&a>15
君哥是黑马最纯洁的老师或者君哥是黑马最帅 真的
int a=10;
int b=20;
a<b||a>15
&和&&;结果都相同
|和||,结果也相同
&&和||多了一个短路的效果
君哥是黑马最帅并且君哥是黑马最纯洁的老师
君哥是黑马最帅或者君哥是黑马最纯洁的老师
true^false ture
false^false false
6.三元运算符
(a>3&&a>10)
结果是布尔类型?表达式1:表达式2
执行流程:
判断关系表达式的结果
如果是true
执行表达式1
如果是false
执行表达式2
7.if语句
if(结果是布尔类型){
语句体;
}
执行流程:
判断表达式的结果是true还是false
如果是true则执行语句体
如果是false则不执行语句体,if语句结束。
if(关系表达式){
语句体1;
}else{
语句体2;
}
执行流程:
判断表达式的结果是true还是false
如果是true则执行语句体1
如果是false则执行语句体2
if(表达式1){
语句体1;
}else if(表达式2){
语句体2;
}
...
else{
语句体n+1;
}
格式的总结:
一个if语句,都是有一个if开头后面跟0个或多个的else if语句,最后可能跟一个else
1.1数组概念
数组是存储同一种数据类型多个元素的容器。
数组既可以存储基本数据类型,也可以存储引用数据类型
1.2数组的定义格式
格式1:数据类型[] 数组名;
格式2:数据类型 数组名[];
1.3数组初始化之动态初始化
•动态初始化:初始化时只指定数组长度,由系统为数组分配初始值。
格式:数据类型[] 数组名 = new 数据类型[数组长度];
数组长度其实就是数组中元素的个数。
栈 存储局部变量
堆 存储new出来的东西
1.4数组初始化之静态初始化
•静态初始化:初始化时指定每个数组元素的初始值,由系统决定数组长度。
–格式:
•数据类型[] 数组名 = new 数据类型[]{元素1,元素2,…};
方法的概述
简单的说:方法就是完成特定功能的代码块
格式:
修饰符 返回值类型 方法名(参数类型 参数名1,参数类型 参数名2…) {
函数体;
return 返回值;
}
方法调用之有明确返回值的方法调用
•有明确返回值的方法调用:
–单独调用,没有意义
–输出调用,有意义,但是不够好,因为我不一定非要把结果输出
–赋值调用,推荐方式
方法调用之void修饰的方法调用
没有明确返回值的函数调用:
其实就是void类型方法的调用
只能单独调用
|
|