/* 练习算术运算符 */ public class Test06_1 { public static void main(String[] args) { int a = 3; int b = 2; int res = a/b; // 等号的右边先运算,运算的时候,ab都是int,所以运算的结果是1 // 将整数1给double类型的res2变量赋值的时候,会自动类型转换,将1变成1.0赋值 double res2 = a/b; System.out.println(res);// 1 System.out.println(res2);// 1.0 // 如果我们就像得到1.5,有两种方式,1: ab运算前强行将其中一个转成double 方式2: 运算前直接乘以1.0 double res3 = a/(double)b; System.out.println(res3); double res4 = 1.0*a/b; System.out.println(res4); int c = 3; int d = 8; int res5=d%c; int res6=c%d; System.out.println(res5);// 2 System.out.println(res6);// 3 } }
输出如下图:
/* 练习 + 当成字符串的连接符使用 */ public class Test06_2 { public static void main(String[] args) { String s = "a"; s=s+123; System.out.println(s); // 如果+的左右两边都是可以运算的数据,就会直接当成加法运算,如果左右两边至少有一个是字符串的时候,就会当成连接符 s=s+"你好"+1+1; System.out.println(s); char a='张'; char b='学'; char c='全'; int sum = a+b+c; System.out.println(sum); int ys = sum%3; System.out.println(ys); // + 还可以当成正号使用,但是可以省略 System.out.println(+3); } }
输出如下图:
/* 自增自减运算符 */ public class JiaJia { public static void main(String[] args) { int a = 5; a++; System.out.println(a);// 6 ++a; System.out.println(a);// 7 //对于变量a来讲,一共有两件事,第1件事是处理面前的 ++ ,然后再处理 后面的 + int b = ++a + 3; System.out.println("b="+b);// 11 System.out.println("a="+a);// 8 //对于变量a来讲,一共有两件事,第1件事是处理+号(因为此时的++在变量的后面,所以变量很不待见它,所以最后才运算++) int c = a++ + 3; System.out.println("c="+c);// 11 System.out.println("a="+a);// 9 } }
输出如下图:
/* 练习赋值运算符 */ public class Test08_1 { public static void main(String[] args) { int a = 5; a+=2; System.out.println(a); a/=3; System.out.println(a); a%=5; System.out.println(a); // System.out.println("1"+=1);// 语法报错,因为字符串"1"无法赋值 } }
输出如下图:
/* 练习关系运算符(比较运算符) */ public class Test09_1 { public static void main(String[] args) { int a = 5; int b = 6; System.out.println(a>b);// false System.out.println(a<=b);// true System.out.println(a==b);// false System.out.println(a!=b);// true System.out.println(a=b);// 6 } }
输出如下图:
/* 练习逻辑运算符 参与运算的数据必须是boolean类型,且运算的结果还是boolean类型 && 和 & 最终运算的结果都是一样的,但是&&具有短路的功能,当左边是false的时候,右边不再运算了,可以提升程序效率 || 和 | 最终运算的结果都是一样的,但是||具有短路的功能,当左边是true的时候,右边不再运算了,可以提升程序效率 */ public class Test10_1 { public static void main(String[] args) { int a = 2; int b = 3; int c = 4; System.out.println(a>b && b++ >c);// false System.out.println(b); // 3 System.out.println(a>b || ++a<b);// false System.out.println(a);//3 System.out.println(!true);//false System.out.println(!false);//true System.out.println(!(a<c));// false System.out.println(true ^ false);// true System.out.println(true ^ true);// false System.out.println(false ^ false);// false } }
/* 练习三元运算符 格式: 关系表达式?值1:值2; 上面的三元运算符运算出来的结果必须使用,如果不使用,语法是错误的; 可以参与其他运算,也可以直接输出,也可以将运算的结果赋值给某个变量 */ public class Test11 { public static void main(String[] args) { int score = 89; String a = score >=60?score+"及格":score+"不及格"; System.out.println(a); } }
输出如下:
package com.itheima.demo12_Scanner; import java.util.Scanner; public class MyScanner { public static void main(String[] args) { // 1: 导包,把别人的东西拿到我们的类中来 // 2: 给导的包起个名字 Scanner sc = new Scanner(System.in); System.out.println("亲,请输入整数:"); // 3: 指挥干活 int i = sc.nextInt(); System.out.println("您输入的数字是:"+i); System.out.println("亲,请输入小数:"); // 3: 指挥干活 double b= sc.nextDouble(); System.out.println("您输入的数字是:"+b); System.out.println("请输入一句话:"); String next = sc.next(); System.out.println("您输入的内容是:"+next); } }