java基础运算
1.逻辑运算符
1.加(+),减(-),乘(*),除(-),取余(%)
2.自增(++),自减(--),
3.&&逻辑与 ,||逻辑或 ,!逻辑非
2.逻辑运算符的应用
2.1取余
public static void main(String[] args) {
// 对比自己小的数取余 等于这个数的本事
// 零对任何数取余都为0
//
int num = 1%3;
// int nu = 10%0;
System.out.println(num);//num=1
2.2自增(减)运算符
// a++表示 a = a+1;
// a--表示 a = a--;
int a =5;
a++;
System.out.println(a);
int a1 = 10,a2=10,a3 = 10;
int b1 = a1 + a1++;
int b2 = a2 + ++a2;
int b3 = a3++ + a3;
System.out.println(a1);//a1=11
System.out.println(b1);//b1=20
System.out.println(b2);//b2=21
System.out.println(a2);//a2=11
System.out.println(b3);//a3=21
由此得出结论
如果++在后 先参与运算再进行自增;
如果++在前(++a)先进行自增然后进行运算
2.3判断逻辑运算符
2.3.1介绍
1.&&逻辑与
(判断条件1)&& (判断条件2)
规则(一假则假)
如果条件1条件2 同时为真 这时 整个表达式 返回一个真
如果条件1条件2 有一个假 这时 整个表达式 返回一个假
2.||逻辑或
(判断条件1)|| (判断条件2)
规则(一真则真)
如果条件1条件2 有一个真 这时 整个表达式 返回一个真
如果条件1条件2 同时为假 这时 整个表达式 返回一个假
3.!逻辑非
!规则(非真即假 非假即真)
2.3.2判断逻辑运算符应用
1.
boolean re1 = true && false;
boolean re2 = false && false;
System.out.println(re1);//false
System.out.println(re2);//false
2.
boolean re3 = true || false;
boolean re4 = false || false;
System.out.println(re3);//true
System.out.println(re4);//false
boolean re5 = !false;
System.out.println(re5);true
3.
int num1 = 10;
int num2 = 5;
boolean b1 = (num1 < num2)&&(++num1 > num2);
System.out.println(num1);//num1=10
System.out.println(num2);//num2=5
System.out.println(b1);//false
boolean b2 = (num1>num2)||(++num1>num2);
System.out.println(num1);//num1=10
System.out.println(num2);//num2=5
System.out.println(b2);//true
由此可得出结论
逻辑与 短路
当条件1为假时 整个表达式 都是假
这时条件2 则不会执行
逻辑或 短路
当条件1为真时 整个表达式 都是真
这时条件2 则不会执行
2.4三目运算符
2.4.1结构
(判断条件)?值1:值2;
成立返回值1 不成立返回值2;
2.4.2三目运算符代码应用
1.使用三目运算符 求 三个数的最大值
public static void main(String[] args) {
int num1 = 10;
int num2 = 15;
int num3 = 34;
int max = (num1 > num2)? num1 : num2;
System.out.println(((max > num3)? max : num3));
3.Scanner类
3.1作用
1.创建一个扫描对象 用来接键盘输入的内容
2.接收的时候 Scanner对象 创建一次就行
import java.util.Scanner;//把这个类导入到工程中
public class Demo05 {
public static void main(String[] args) {
从键盘接受一个数 并打印
Scanner scanner=new Scanner(System.in);
System.out.println("请输入");
以字符串的形式,接受键盘输入的值
String str = scanner.nextLine();
System.out.println(str);
//打印
System.out.println("请再次输入");
String str1 = scanner.nextLine();
System.out.println(str1);
//关闭scanner
scanner.close();
}
}
4.流程控制
4.1分类
1,顺序结构 相当于代码 从上向下依次执行
2,分支结构 if switch
4.1.2if语句
* 书写格式
* 1.if(判断条件){执行语句;}如果判断条件成立就执行执行语句
* 2.if(判断条件){执行语句1}else{执行语句2}如果判断条件成立就执行执行语句1反之条件不成立就执行执行语句2
* 3.if(判断条件1){执行语句1}else if(判断条件2){执行语句2}else{执行语句3}如果判断语都不成立就会去执行else中的语句
例如:
输出大于90为优秀 71-90为良好 61-70为合格 60以下不合格
if(n > 90 && n <= 100){
System.out.println("优秀");
} else if(n > 70 ){
System.out.println("良好");
} else if(n > 60){
System.out.println("合格");
} else if(n > 0 ){
System.out.println("不合格");
} else{
System.out.println("sorry...");
}
写完代码时,记得一定要回头重新审视一下代码,看能不能进行优化
4.1.2switch语句
switch的结构;
switch (值) {
case value1:
语句1
break;
case value2:语句2
default: 语句3
break;
}
switch的执行
用 值 和 value1 进行匹配 匹配上 就执行 语句1
没匹配就继续向下 匹配 value2 匹配数就执行语句2;如果还没匹配就执行语句3
switch代码应用
Scanner sc = new Scanner(System.in);
System.out.println("请输入季节1234:");
int a = sc.nextInt();
switch (a) {
case 1:System.out.println("春天"); break;
case 2:System.out.println("夏天"); break;
case 3:System.out.println("秋天"); break;
case 4:System.out.println("冬天"); break;
default: System.out.println("sorry");//当所有case都没有执行就会执行
break;//跳出switch
}
如果判断简单的几个数 那么使用switch比较方便如果是区间的话if方便
4.1.3while循环
while(判断条件){
* 循环体
* }
* 如果判断条件成立 就执行循环体
* 反正 不成立 就不执行
* 执行顺序
* 1-》2-》-》1看条件是否成立 成立-》2-》1不成立 循环结束
代码应用
public class Demo09 {
public static void main(String[] args) {
int i = 0;//定义一个变量 记录打印次数
while(i<10) {
System.out.println("睡觉");
i++;//改num的值;
}
while(true) {
System.out.println("死循环");
}
//
}