Java零基础入门3.0
Java系列第三章
1. 运算符
补充:
Sanner sc = new Scanner(System.in);得到一个标准的输入流,并创建一个新的基于输入流的对象。就是键盘录入数据
Scanner中有好多个方法,nextInt()是输入整型用的,next()是输入字符串型用的,还有nextLong()、nextDouble()、nextByte()、nextShort()。等等各种方法,都只能用来输入对应的数值类型。
1.1 算术运算符
1.
public class ArithmeticoperatorDemo1 {
public static void main(String[] args){
// +
System.out.println(3+2);// 5
// -
System.out.println(5-1);// 4
// *
System.out.println(7*9);// 63
// 如果在计算的时候有小数参与
// 结论:
//在代玛中,如果有小数参与计算,结果有可能不精确的.
System.out.println(1.1+1.1);
System.out.println(1.1+1.01);
System.out.println(1.1-1.01);
System.out.println(1.1*1.01);
}
}
2.
package com.itheima.demo1;
public class ArithmeticoperatorDemo1 {
//主入口
// 结论:
//1.整数参与计算,结果只能得到整数
//2.小数参与计算,结果有可能是不精确的,如果我们需要精确计算,那么需要用到后面的知识点。
public static void main(String[] args){
// 除法
System.out.println(10/2);
System.out.println(10/3);
System.out.println(10.0/3);
// 取模,取余。实际上也是除法运算,只不过得到的是余数而已
System.out.println(10%2);
System.out.println(10%3);
//应用场景:
//1.可以用取模来判断,A是否可以被B整除//A % B10 % 3
//2.可以判断A是否为偶数
//A % 2如果结果为o.那么证明A是一个偶数。如果结果为1,那么证明A是一个奇数1/3.在以后,斗地主发牌
//三个玩家
//把每一张牌都定义一个序号
// 拿着序号%3如果结果为1,就发给第一个玩家。/如果结果为2,那么就发给第二个玩家
//如果结果为o,那么就发给第三个玩家I
}
}
练习
package com.itheima.demo1;
import java.util.Scanner;
public class ArithmeticoperatorDemo1 {
public static void main(String[] args) {
//键盘录入一个三位数,获取其中的个位,十位,百位
//1.键盘录入
Scanner sc = new Scanner(System.in);
System.out.println("请输入一个三位数:");
int number = sc.nextInt();
//2.获取个位,十位,百位
// 公式。
//个位, 数字% 10
//十位 数字/10 % 18
//百位 数字/ 10 / 10 % 10
// ...
int ge = number % 10;
int shi = number / 10 % 10;
int bai = number / 100 % 10;
System.out.println(ge);
System.out.println(shi);
System.out.println(bai);
}
}
2. 隐式转换和强制转换
数字进行运算时,数据类型不一样不能运算,需要转成一样的,才能运算。
2.1 隐式转换
2.2 强制转换
package com.itheima.demo1;
public class ArithmeticoperatorDemo1 {
public static void main(String[] args) {
byte b1 = 100;
byte b2 = 100;
//现在我们要强转的是谁?l
// b1 + b2计算之后的结果。
// (byte)b1 + b2强转的是b1,并不是最终的结果
byte result = (byte)(b1+b2);
System.out.println(result);
//结果就发生错误了。因为要转换的数据过大。
}
}
3. 字符串和字符的加操作
3.1 字符串
3.2 字符的+操作
4. 自增自减运算符
package com.itheima.demo1;
public class ArithmeticoperatorDemo1 {
public static void main(String[] args) {
int a =10;
a++;
System.out.println(a);
++a;
System.out.println(a);
a--;
System.out.println(a);
--a;
System.out.println(a);
}
}
5. 赋值运算符
案例:
package com.itheima.demo1;
public class ArithmeticoperatorDemo1 {
public static void main(String[] args) {
// +=
//规则:将左边和右边进行相加,然后再把结果赋值给左边
int a = 10;
int b = 20;
//把a+b,再把结果赋值给左边的变量a
a+=b;
//等同于a = (int)(a + b);
System.out.println(a);//30
System.out.println(b);//20
//细节:
//+=,-=,*=,/=,%=底层都隐藏了一个强制类型转换
short s = 1;
//把左边和右边进行相加,得到结果2,再赋值给左边的变量
s+=1;
//等同于: s = (short) (s + 1);
System.out.println(s);//2
}
}
6. 关系运算符
练习:
package com.itheima.demo1;
import java.util.Scanner;
public class ArithmeticoperatorDemo1 {
public static void main(String[] args) {
//1.键盘录入两个整数表示衣服的时髦度
Scanner sc = new Scanner(System.in);
System.out.println("请输入我们自己的衣服时髦度:");
int myFashion = sc.nextInt();
System.out.println("请输入相亲对象的衣服时髦度:");
int girlFashion = sc.nextInt();
//2.把我衣服的时髦度跟女孩的时髦度进行对比就可以了
boolean result = myFashion>girlFashion;
System.out.println(result);
}
}
7. 逻辑运算符
7.1 短路逻辑运算符
练习:
package com.itheima.demo1;
import java.util.Scanner;
public class ArithmeticoperatorDemo1 {
public static void main(String[] args) {
//分析:
//1.键盘录入两个整数1/变量a变量b
//2.a == 6 |l b == 6 ll (a + b)% 6 == 0
// 如果满足其中一个,那么就可以输出true
//键盘录入两个整数
Scanner sc = new Scanner(System.in);
System.out.println("请输入一个整数:");
int number1 = sc.nextInt();
System.out.println("请输入二个整数:");
int number2 = sc.nextInt();
//可以短路逻辑运算符去连接三个判断
boolean result = number1 == 6||number2 ==6||(number1+number2)%6==0;
System.out.println(result);
}
}
8. 三元运算符
练习:
1.
package com.itheima.demo1;
import java.util.Scanner;
public class ArithmeticoperatorDemo1 {
public static void main(String[] args) {
//分析:
//1.键盘录入两只老虎的体重
Scanner sc = new Scanner(System.in);
System.out.println("请输入一只老虎的体重:");
int weight1 = sc.nextInt();
System.out.println("请输入二只老虎的体重:");
int weight2 = sc.nextInt();
//2.比较l
// true false
// 相同不同
//system.out.println(weight1 == weight2);
String result = weight1==weight2?"相同":"不同";
System.out.println(result);
}
}
2.
package com.itheima.demo1;
public class ArithmeticoperatorDemo1 {
public static void main(String[] args) {
//1.定义三个变量记录三个和尚的身高
int height1 = 150;
int height2 = 210;
int height3 = 160;
//2.拿着第一个和尚和第二个和尚进行比较
// 再拿着结果跟第三个和尚进行比较即可
int temp = height1 > height2 ? height1 : height2;
int max = temp > height3 ? temp : height3;
System.out.println(max);
}
}
9. 运算符优先级
10.原码反码补码
10.1 原码
10.2 反码
10.3 补码