twotwo

//注意: 有小数参加运算,结果一定是小数
System.out.println(a*1.0 / b);//30.0/20: 1.5
%(取余数)运算符
//定义int变量num,并初始化
int num = 1234;
//计算个位赋值int变量ge
int ge = num % 10;
//计算十位赋值int变量shi
int shi = num / 10 % 10;
//计算百位赋值int变量bai
int bai = num / 100 % 10;
//计算千位赋值int变量qian
int qian = num / 1000 % 10;
+的作用
    1.完成数学中的加法运算: +左右两边都是数字或者字符
    2.完成字符串的连接(拼接): 如果+的左右两边出现字符串
/*
    表达式"5+5=" + 5 + 5: 从左向右计算
    先计算表达式"5+5=" + 5: +号左侧是字符串"5+5=",右侧是数字5,此时+号代表字符串的拼接
    表达式"5+5=" + 5的结果: "5+5=5"
    再计算表达式"5+5=5" + 5: +号左侧是字符串"5+5=5",右侧是数字5,此时+号代表字符串的拼接
    最终结果: "5+5=55"
 */
System.out.println("5+5=" + 5 + 5);//5+5=55
/*
    表达式"5+5=" + (5 + 5):从左向右计算,但是有()要先计算()
    先计算表达式(5 + 5): +号左侧是数字5,右侧是数字5,此时+号代表加法运算,结果是10
    再计算"5+5=" + 10: +号左侧是字符串"5+5=",右侧是数字10,此时+号代表字符串的拼接
    最终结果: "5+5=10"
 */
System.out.println("5+5=" + (5 + 5));//5+5=10
System.out.println(5 + "Hello" + 5);//5Hello5

自增++,自减--运算符

public class Demo04ZiZeng {
    public static void main(String[] args) {
        int a = 1;
        //单独使用: 只有++,没有别的运算
        ++a;//a = a + 1
        System.out.println("a = " + a);//2

        int b = 1;
        //单独使用: 只有++,没有别的运算
        b++;//b = b + 1
        System.out.println("b = " + b);//2
        System.out.println("----------");

        int c = 3;
        //单独使用: 只有--,没有别的运算
        --c;//c = c - 1
        System.out.println("c = " + c);//2

        int d = 3;
        //单独使用: 只有--,没有别的运算
        d--;//d = d - 1
        System.out.println("d = " + d);//2
    }
}
public class Demo05ZiZeng {
    public static void main(String[] args) {
        int a = 1;
        /*
            a++: 变量a的值增加1
            a--: 变量a的值减少1
            混合运算: 有++和=
            因为++在变量a的前面,先把变量a的值增加1,变量a的值变成2,
            然后再使用变量a增加1之后的结果2赋值给变量b,所以变量b的值是2
         */
        int b = ++a;
        System.out.println("a = " + a);//2
        System.out.println("b = " + b);//2

        int c = 1;
        /*
            混合运算: 有++和=
            因为++在变量c的后面,先使用c的值1,赋值给左侧变量d,
            所以d的值是1,然后c的值增加1,c变成2
         */
        int d = c++;
        System.out.println("c = " + c);//2
        System.out.println("d = " + d);//1

        int e = 1;
        //++在e的前面,e的值先增加1,变成2,然后输出e的值,结果是2
        System.out.println(++e);//2
        System.out.println(e);//2

        int f = 1;
        //++在f的后面,先使用f的值1,进行输出,输出结果是1,然后f的值增加1,f变成2
        System.out.println(f++);//1
        System.out.println(f);//2
    }
}
public class Demo02FuZhi {
    public static void main(String[] args) {
        
/*
    赋值运算符
    += 	加后赋值    a+=b,将a+b的值给a 	a = a + b
    -= 	减后赋值    a-=b,将a-b的值给a 	a = a - b
    *= 	乘后赋值    a*=b,将a×b的值给a 	a = a * b
    /= 	除后赋值    a/=b,将a÷b的商给a    a = a / b
    %= 	取余后赋值  a%=b,将a÷b的余数给a  a = a % b
    注意:
        1.=: 表示的是赋值运算
        2.==: 表示的是判断是否相同
 */
        int a = 10, b = 20;
        a += b;//a = a + b
        System.out.println("a = " + a);//30
        System.out.println("b = " + b);//20

        int c = 100, d = 30;
        c /= d;//c = c / d
        System.out.println("c = " + c);//3
        System.out.println("d = " + d);//30

        int e = 20, f = 6;
        e %= f;//e = e % f
        System.out.println("e = " + e);//2
        System.out.println("f = " + f);//6
    }
}
package com.itheima.d2_qita;
 
public class Demo03GuanXi {
    /*
    关系运算符
    1.作用:
        用来比较两个数据之间的大小关系,结果是boolean类型的数据
    2.特点:
        关系表达式不管写的多么复杂,或者多么简单,最终结果要么是true(成立),要么是false(不成立)
    3.分类:
        == 	a==b,	判断a和b的值是否相等,成立为true,不成立为false
        > 	a>b,	判断a是否大于b,成立为true,不成立为false
        >= 	a>=b,	判断a是否大于或者等于b,成立为true,不成立为false
        < 	a<b,	判断a是否小于b,成立为true,不成立为false
        <= 	a<=b,	判断a是否小于或者等于b,成立为true,不成立为false
        != 	a!=b,	判断a和b的值是否不相等,成立为true,不成立为false
    4.注意:
        1.=: 表示的是赋值运算
        2.==: 表示的是判断是否相同
 */
    public static void main(String[] args) {
        //定义两个int变量并初始化
        int a = 10, b = 20;
        System.out.println(a > b);//false
        System.out.println(a >= b);//false
        System.out.println(a < b);//true
        System.out.println(a <= b);//true
        System.out.println(a != b);//true
        System.out.println(a == b);//false
        //把变量b的值赋值给变量a,然后再输出a的值
        System.out.println(a = b);//20
    }
}
public class Demo04LuoJi {
    /*
    逻辑运算符
        1.作用:
            用来连接多个布尔表达式的,结果也是布尔类型
        2.分类:
            (1)逻辑与(&:shift+7)【有false,则false】:
                表示并且的意思,同时成立的意思
                多个条件都为true,结果才为true
                多个条件只要有一个为false,结果就是false
            (2)逻辑或(|:shift+\)【有true,则true】:
                表示或者的意思
                多个条件只要有一个为true,结果就是true
                多个条件都是false,结果就是false
            (3)逻辑异或(^:shift+6):			目前暂时不用
                相同为false,不同为true
            (4)逻辑非(!:shift+1):
                !true: 就是false
                !false: 就是true
 */
    public static void main(String[] args) {
        int a = 10, b = 20, c = 30;
        //&运算: 有false,则false
        System.out.println((a > b) & (a > c));//false & false ---> false
        System.out.println((a < b) & (a < c));//true  & true  ---> true
        System.out.println((a > b) & (a < c));//false & true  ---> false
        System.out.println((a < b) & (a > c));//true  & false ---> false
        System.out.println("----------------");
        //|运算: 有true,则true
        System.out.println((a > b) | (a > c));//false | false ---> false
        System.out.println((a < b) | (a < c));//true  | true  ---> true
        System.out.println((a > b) | (a < c));//false | true  ---> true
        System.out.println((a < b) | (a > c));//true  | false ---> true
        System.out.println("----------------");
        //^运算: 相同为false,不同为true    目前用不到
        System.out.println((a > b) ^ (a > c));//false ^ false ---> false
        System.out.println((a < b) ^ (a < c));//true  ^ true  ---> false
        System.out.println((a > b) ^ (a < c));//false ^ true  ---> true
        System.out.println((a < b) ^ (a > c));//true  ^ false ---> true
        System.out.println("----------------");
        //!运算: !true就是false,!false就是true
        System.out.println(!true);//false
        System.out.println(!false);//true

        //输出变量的值是否不等于变量b的值
        System.out.println(a != b);//true
        System.out.println(!(a == b));//!false --> true 
    }
}
public class Demo05DuanLu {
    public static void main(String[] args) {
        /*
    逻辑运算符的短路效果
        1.基本使用
            (1)短路逻辑与(&&): 左侧为false,右侧不进行计算
            (2)短路逻辑或(||): 左侧为true,右侧不进行计算

        2.使用区别):
            (1)&&和&: 最终的结果是相同的,但是&&具有短路的效果,效率高
            (2)||和|: 最终的结果是相同的,但是||具有短路的效果,效率高

        3.注意:
            以后实际学习/开发过程中,需要连接多个条件时,强烈建议使用&& 或者 ||
 */
        int a = 1;
        /*
            表达式(3 < 2) & (++a > 1): 从左向右执行
            先计算表达式(3 < 2)的结果为false,但是对于&而言,虽然左侧为false,
            已经决定了最终的结果为false,仍然会计算右侧的表达式(++a > 1)的结果为true,
            导致a的值增加1
         */
        System.out.println((3 < 2) & (++a > 1));//false
        System.out.println(a);//2 说明 对于&而言,左侧为false,右侧仍然需要计算

        int b = 1;
        /*
            表达式(3 < 2) && (++b > 1): 从左向右执行
            先计算表达式(3 < 2)的结果为false,但是对于&&而言,
            左侧为false已经决定了最终的结果为false,
            右侧的表达式(++b > 1)不再计算了,所以b的值没有变化
         */
        System.out.println((3 < 2) && (++b > 1));//false
        System.out.println(b);//1 说明 对于&&而言,左侧为false,右侧不计算

        int c = 1;
        /*
            表达式(3 > 2) | (++c > 2): 从左向右执行
            先计算表达式(3 > 2)的结果为true,但是对于|而言,虽然左侧为true,
            已经决定了最终的结果为true,仍然会计算右侧的表达式(++c > 1)的结果为true,
            导致c的值增加1
         */
        System.out.println((3 > 2) | (++c > 1));//true
        System.out.println(c);//2说明 对于|而言,左侧为true,右侧仍然需要计算

        int d = 1;
        /*
            表达式(3 > 2) || (++d > 1): 从左向右执行
            先计算表达式(3 > 2)的结果为true,但是对于||而言,
            左侧为true已经决定了最终的结果为true,
            右侧的表达式(++d > 1)不再计算了,所以d的值没有变化
         */
        System.out.println((3 > 2) || (++d > 1));//true
        System.out.println(d);//1 说明 对于||而言,左侧为true,右侧不计算
    }
}
public class Demo06SanYuan {
    /*
    三元运算符
        1.格式:
            数据类型 变量名称 = 布尔表达式1 ? 表达式2 : 表达式3;
            注意:
                ?号前面的式子的结果必须是布尔类型

        2.执行流程:
            (1)计算布尔表达式1的结果,看是true,还是false
            (2)如果布尔表达式1的结果是true,取表达式2的结果赋值给左侧的变量
            (3)如果布尔表达式1的结果是false,取表达式3的结果赋值给左侧的变量
    需求:
        一座寺庙里住着两个和尚,已知他们的身高分别为150cm、210cm,请用程序实现获取这两个和尚的最高身高。

    实现步骤:
        1.定义两个int变量h1和h2,代表两个和尚的身高,并根据题目需求进行初始化
        2.使用三元运算符计算h1和h2的最大值,保存int变量max中
        3.输出结果数据max

    注意:
        判断h1和h2的大小的表达式可以写出好多种
        根据表达式的不同,三元运算符?和:后面的式子就有可能不一样
        int max = h1 > h2 ? h1 : h2;
        int max = h2 > h1 ? h2 : h1;
 */
    public static void main(String[] args) {
        //1.定义两个int变量h1和h2,代表两个和尚的身高,并根据题目需求进行初始化
        int h1 = 250, h2 = 210;
        //2.使用三元运算符计算h1和h2的最大值,保存int变量max中
        //int max = h1 > h2 ? h1 : h2;
        int max = h2 > h1 ? h2 : h1;
        //3.输出结果数据max
        System.out.println("最大身高: " + max);
    }
}
public class Demo07SanYuan {
    /*
    需求:
        一座寺庙里住着三个和尚,已知他们的身高分别为150cm、210cm、165cm,
        请用程序实现获取这三个和尚的最高身高。

    实现步骤:
        1.定义三个int变量h1,h2和h3,代表三个和尚的身高,并根据题目需求进行初始化
        2.使用三元运算符计算h1和h2的最大值,保存int变量temp中
        3.使用三元运算符计算temp和h3的最大值,保存int变量max中
        4.输出结果数据max
 */
    public static void main(String[] args) {
        //1.定义三个int变量h1,h2和h3,代表三个和尚的身高,并根据题目需求进行初始化
        int h1 = 150, h2 = 210, h3 = 165;
        //2.使用三元运算符计算h1和h2的最大值,保存int变量temp中
        int temp = h1 > h2 ? h1 : h2;
        //3.使用三元运算符计算temp和h3的最大值,保存int变量max中
        int max = temp > h3 ? temp : h3;
        //4.输出结果数据max
        System.out.println("最大身高: " + max + "cm");
    }
}
public class Demo03Scanner {
    /*
    键盘录入Scanner类的使用:
        1.导包(找到我们要使用的东西) import 引入
            格式: import 包名.类名;
            Scanner类的导包: import java.util.Scanner;
        2.创建对象
            格式: 类名 对象名 = new 类名(参数列表...);
            解释:
                (1)类名: class关键字后面指定的名字
                (2)对象名: 就是我们前面用的变量名,是一个标识符(符合命名规则)
                (3)=: 赋值的过程
                (4)new: 开辟内存空间创建对象的过程
                (5)参数列表: 根据需求指定
            创建Scanner类的对象:
                Scanner sc = new Scanner(System.in);
                注意: ()中的System.in目前是固定写法,就业班详细学习
        3.使用对象:
            sc.nextInt(): 获取键盘录入的整数数字(int范围)
            sc.nextDouble(): 获取键盘录入的小数数字(double范围)

        注意事项:
        不用自己手动导包,自己写import java.util.Scanner;
        (1)正确的写出Scanner类的前几个字母,根据提示,选择Scanner类,会自动导包        建议使用
        (2)正确的写出Scanner类的名字,如果没有提示: 快捷键alt + 回车
 */
    public static void main(String[] args) {
        //1.在最上面完成导包
        //2.创建键盘录入Scanner类的对象
        Scanner sc = new Scanner(System.in);

        //3.获取键盘录入的数字
        System.out.println("请输入第一个整数数字: ");
        int a = sc.nextInt();
        System.out.println("您输入的第一个整数数字: " + a);
        System.out.println("请输入第二个整数数字: ");
        int b = sc.nextInt();
        System.out.println("您输入的第二个整数数字: " + b);
    }
}
public class Demo04ScannerSum {
    /*
    键盘录入练习
    需求:
        获取键盘录入的两个整数(int类型)数字,在控制台输出求和的结果。
    实现步骤:
        1.创建键盘录入Scanner类的对象sc
        2.获取键盘录入的两个整数数字,分别保存int变量a和b中
        3.计算a和b的数据和保存int变量sum中
        4.输出求和结果数据sum
 */
    public static void main(String[] args) {
        //1.创建键盘录入Scanner类的对象sc
        Scanner sc = new Scanner(System.in);
        //2.获取键盘录入的两个整数数字,分别保存int变量a和b中
        System.out.println("请输入第一个整数数字: ");
        int a = sc.nextInt();
        System.out.println("请输入第二个整数数字: ");
        int b = sc.nextInt();
        //3.计算a和b的数据和保存int变量sum中
        int sum = a + b;
        //4.输出求和结果数据sum
        System.out.println("求和结果: " + sum);
    }
}

  • 6
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值