Browse Source

2025年4月26日-授课代码:运算符&流程控制&随机数生成&键盘输入

WanJL 1 month ago
parent
commit
b6f84a4566

+ 9 - 0
chapter01-javaSE/20250426-Java基础语法/Demo01.java

@@ -0,0 +1,9 @@
+package com.loveCoding.j20250426_java_basic;
+
+//一个Java文件中,可以存在多个类class。
+// 但是只能有一个类是使用public修饰的。
+//并且这个类名必须和文件名相同
+
+public class Demo01{
+}
+

+ 19 - 0
chapter01-javaSE/20250426-Java基础语法/Demo02.java

@@ -0,0 +1,19 @@
+package com.loveCoding.j20250426_java_basic;
+
+/**
+ * @author WanJl
+ * @version 1.0
+ * @title Demo02
+ * @description
+ * @create 2025/4/26
+ */
+public class Demo02 {
+    //1、先创建主方法main方法
+    //缩写:psvm+Enter键
+    public static void main(String[] args) {
+        System.out.println();   //输出语句 也可以缩写:sout+Enter键
+        int a=11;
+        double b=3.0;
+        System.out.println(a/b);
+    }
+}

+ 19 - 0
chapter01-javaSE/20250426-Java基础语法/Demo03.java

@@ -0,0 +1,19 @@
+package com.loveCoding.j20250426_java_basic;
+
+/**
+ * @author WanJl
+ * @version 1.0
+ * @title Demo03
+ * @description
+ * @create 2025/4/26
+ */
+public class Demo03 {
+    public static void main(String[] args) {
+        //++ -- 都属于单目运算符,因为操作的数只有一个。
+        //符号放在操作数前和操作数后,操作的顺序和步骤是不一样的。
+        int a=1;
+        System.out.println(a++);    //先做其他运算,再做+1运算。
+        int b=1;
+        System.out.println(++b);    //先做+1运算,再做其他运算。
+    }
+}

+ 21 - 0
chapter01-javaSE/20250426-Java基础语法/Demo04.java

@@ -0,0 +1,21 @@
+package com.loveCoding.j20250426_java_basic;
+
+/**
+ * @author WanJl
+ * @version 1.0
+ * @title Demo04
+ * @description
+ * @create 2025/4/26
+ */
+public class Demo04 {
+    public static void main(String[] args) {
+        byte a=1;
+        a=(byte)(a+6);
+        System.out.println(a);
+        //加后赋值
+        byte a1=127;
+        a1+=6;  //因为+=号是在运算时转换为二进制后直接运算完的。隐含了强制类型转换
+        System.out.println(a1);
+
+    }
+}

+ 51 - 0
chapter01-javaSE/20250426-Java基础语法/Demo05.java

@@ -0,0 +1,51 @@
+package com.loveCoding.j20250426_java_basic;
+
+/**
+ * @author WanJl
+ * @version 1.0
+ * @title Demo05
+ * @description
+ * @create 2025/4/26
+ */
+public class Demo05 {
+    public static void main(String[] args) {
+        //& 与(AND)运算符,只有符号左右两边的布尔表达式结果同时为true的时候,
+        // 真正的运算结果才是true,否则都是false
+        System.out.println(15>3&16>7); //true&true      true
+        System.out.println(15>3&16==7);  //true&false   false
+        System.out.println(15==3&16>7); //false&true    false
+        System.out.println(15==3&16==7); //false&false  false
+        //短路方式:
+        //短路方式和非短路方式效果是一样的,只不过如果短路与运算符,左边运算结果为false,则右边不运算了,直接返回false
+        System.out.println(15>3&&16>7); //true&&true      true
+        System.out.println(15>3&&16==7);  //true&&false   false
+        System.out.println(15==3&&16>7); //false&&true    false
+        System.out.println(15==3&&16==7); //false&&false  false
+
+
+        // | 与(OR)运算符,只有符号左右两边的布尔表达式结果同时为false的时候,
+        // 真正的运算结果才是false,否则都是true
+        System.out.println(15>3|16>7); //true|true      true
+        System.out.println(15>3|16==7);  //true|false   true
+        System.out.println(15==3|16>7); //false|true    true
+        System.out.println(15==3|16==7); //false|false  false
+        //短路方式:
+        //短路或和非短路或结果是一样的,只不过如果短路或运算符,左边运算结果为true,则右边不运算了,直接返回true
+        System.out.println(15>3||16>7); //true||true      true
+        System.out.println(15>3||16==7);  //true||false   true
+        System.out.println(15==3||16>7); //false||true    true
+        System.out.println(15==3||16==7); //false||false  false
+
+        // ^ 异或运算符,符号左右两边的布尔表达式的结果如果相同,
+        //真正的运算结果就是false,不同就是true
+        System.out.println(15>3^16>7); //true^true      false
+        System.out.println(15>3^16==7);  //true^false   true
+        System.out.println(15==3^16>7); //false^true    true
+        System.out.println(15==3^16==7); //false^false  false
+
+        // ! 逻辑非,!a,结果和a的结果正好相反
+        System.out.println(!(15>3)); //!true      false
+        System.out.println(!(16==7));  //!false   true
+
+    }
+}

+ 24 - 0
chapter01-javaSE/20250426-Java基础语法/Demo06.java

@@ -0,0 +1,24 @@
+package com.loveCoding.j20250426_java_basic;
+
+/**
+ * @author WanJl
+ * @version 1.0
+ * @title Demo06
+ * @description
+ * @create 2025/4/26
+ */
+public class Demo06 {
+    public static void main(String[] args) {
+        /*
+            三目运算符(三元运算符)
+            格式:
+                布尔表达式?表达式1:表达式2
+
+                先判断布尔表达式的结果是true还是false,
+                如果结果为true,则执行表达式1
+                如果结果为false,则执行表达式2
+         */
+
+        System.out.println(15>6&7>9?"哈哈哈哈哈哈":18);
+    }
+}

+ 36 - 0
chapter01-javaSE/20250426-Java基础语法/Demo07.java

@@ -0,0 +1,36 @@
+package com.loveCoding.j20250426_java_basic;
+
+/**
+ * @author WanJl
+ * @version 1.0
+ * @title Demo07
+ * @description
+ * @create 2025/4/26
+ */
+public class Demo07 {
+    public static void main(String[] args) {
+        int a=1;
+        switch (a){
+            case 1:
+                System.out.println("a是1");
+                break;  //作用是结束switch语句
+            case 2:
+                System.out.println("a是2");
+                break;
+            case 3:
+                System.out.println("a是3");
+                break;
+            case 4:
+                System.out.println("a是4");
+                break;
+            case 5:
+                System.out.println("a是5");
+                break;
+            case 6:
+                System.out.println("a是6");
+                break;
+            default:    //如果以上条件都不满足,就执行default
+                System.out.println("我也不知道是多少");
+        }
+    }
+}

+ 11 - 0
chapter01-javaSE/20250426-Java基础语法/Demo08.java

@@ -0,0 +1,11 @@
+package com.loveCoding.j20250426_java_basic;
+
+/**
+ * @author WanJl
+ * @version 1.0
+ * @title Demo08
+ * @description
+ * @create 2025/4/26
+ */
+public class Demo08 {
+}

+ 57 - 0
chapter01-javaSE/20250426-Java基础语法/Demo09.java

@@ -0,0 +1,57 @@
+package com.loveCoding.j20250426_java_basic;
+
+/**
+ * @author WanJl
+ * @version 1.0
+ * @title Demo09
+ * @description
+ * @create 2025/4/26
+ */
+public class Demo09 {
+    public static void main(String[] args) {
+        /*
+        for(int i=0;i<10;i++){
+            System.out.println(i)
+        }
+
+        for(初始化语句;循环条件;迭代语句){
+            循环体
+        }
+        int i=0; 初始化语句
+        while(i<10){    循环条件
+            System.out.println(i); 循环体
+            i++;  迭代语句
+        }
+
+        int i=0; 初始化语句
+        do{
+            System.out.println(i); 循环体
+            i++;  迭代语句
+        }while(i<10);   循环条件
+
+        循环语句的执行步骤
+            1、先执行初始化语句
+            2、执行判断条件语句,如果判断结果为true,则执行3,为false则执行5
+            3、执行循环体
+            4、执行迭代语句,执行第2。
+            5、结束循环
+         */
+
+        /*
+            1、编写代码,计算出1000以内的水仙花数。
+            例如:153。1*100+5*10+3 == 1^3+5^3+3^3 满足条件则是水仙花数
+            100以上的三位数,这个数的个位+十位+百位的结果和这个数的每个位上的值的3次方相等
+         */
+
+        /*
+        for (;; ) {
+            System.out.println("hello");
+        }
+        while(true){
+            System.out.println("hello");
+        }
+        */
+
+
+    }
+}

+ 43 - 0
chapter01-javaSE/20250426-Java基础语法/Demo10.java

@@ -0,0 +1,43 @@
+package com.loveCoding.j20250426_java_basic;
+
+/**
+ * @author WanJl
+ * @version 1.0
+ * @title Demo10
+ * @description
+ * @create 2025/4/26
+ */
+public class Demo10 {
+    public static void main(String[] args) {
+        /*
+            控制循环的方式有3种
+            1、continue  结束本次循环,立即开始下一次循环。
+            2、break     结束循环,继续执行循环后的代码。
+            3、return    其实是结束方法,顺便把方法内的循环也结束了
+         */
+        /**/
+        for (int i = 0; i < 100; i++) {
+            if (i%2==0){
+                continue;
+            }
+            System.out.println(i);
+        }
+
+        for (int i = 0; i < 100; i++) {
+            if (i==50){
+                break;
+            }
+            System.out.println(i);
+        }
+        System.out.println("我是循环后的内容....");
+
+        for (int i = 0; i < 100; i++) {
+            if (i==50){
+                return;
+            }
+            System.out.println(i);
+        }
+        System.out.println("我是循环后的内容....");
+
+    }
+}

+ 27 - 0
chapter01-javaSE/20250426-Java基础语法/Demo11.java

@@ -0,0 +1,27 @@
+package com.loveCoding.j20250426_java_basic;
+
+/**
+ * @author WanJl
+ * @version 1.0
+ * @title Demo11
+ * @description
+ * @create 2025/4/26
+ */
+public class Demo11 {
+    public static void main(String[] args) {
+        /*
+            1.百鸡问题,一只公鸡5元,
+            1只母鸡3元,小鸡1元3只,
+            要求用100元买100只鸡,要求计算除所有的采购方案。
+         */
+        for (int gong = 0; gong <20 ; gong++) {
+            for (int mu = 0;  mu<33 ; mu++) {
+                int xiao=100-gong-mu;
+                if (xiao+gong+mu==100&&gong*5+mu*3+xiao/3.0==100){
+                    System.out.println("公鸡:"+gong+"只,"+"母鸡:"+mu+"只,"+"小鸡:"+xiao+"只。");
+                    System.out.println("公鸡花:"+gong*5+"元,"+"母鸡花:"+mu*3+"元,"+"小鸡花:"+xiao/3.0+"元。");
+                }
+            }
+        }
+    }
+}

+ 22 - 0
chapter01-javaSE/20250426-Java基础语法/Demo12.java

@@ -0,0 +1,22 @@
+package com.loveCoding.j20250426_java_basic;
+
+/**
+ * @author WanJl
+ * @version 1.0
+ * @title Demo12
+ * @description
+ * @create 2025/4/26
+ */
+public class Demo12 {
+    public static void main(String[] args) {
+        /*
+        编写代码,输出九九乘法表
+         */
+        for (int i = 1; i <=9; i++) {
+            for (int j = 1; j <=i; j++) {
+                System.out.print(j+"*"+i+"="+i*j+"\t");
+            }
+            System.out.println();
+        }
+    }
+}

+ 51 - 0
chapter01-javaSE/20250426-Java基础语法/Demo13.java

@@ -0,0 +1,51 @@
+package com.loveCoding.j20250426_java_basic;
+
+//import java.util.Scanner;   //导包
+
+import java.util.Scanner;
+
+/**
+ * @author WanJl
+ * @version 1.0
+ * @title Demo13
+ * @description
+ * @create 2025/4/26
+ */
+public class Demo13 {
+    public static void main(String[] args) {
+        /*
+        java中分为两种数据类型:
+            1、基本数据类型
+
+            2、引用数据类型:
+                类
+                数组
+                接口
+                枚举
+                注解
+            1、标准键盘输入类型:Scanner
+            使用Scanner的格式:需要创建Scanner对象
+
+            Scanner sc=new Scanner(System.in);
+
+            2、字符串
+            String  也是一种引用数据类型
+         */
+        System.out.println("请输入:");
+        //创建Scanner对象
+        Scanner sc=new Scanner(System.in);
+
+        //String s=sc.next();//获取键盘输入的字符串内容,执行了这个方法,会扫描我们在控制台输入的各种字符串。
+        //next()方法,是以空格作为结束符。所以扫描的结束位置就是空格之前。
+        String s= sc.nextLine();//方法
+        System.out.println(s+10);
+        //获取键盘输入的整数
+        System.out.println("请输入整数:");
+        int num=sc.nextInt();//方法
+        System.out.println(num+10);
+        System.out.println("请输入小数:");
+        double d=sc.nextDouble();//方法
+        System.out.println(d+10);
+
+    }
+}

+ 24 - 0
chapter01-javaSE/20250426-Java基础语法/Demo14.java

@@ -0,0 +1,24 @@
+package com.loveCoding.j20250426_java_basic;
+
+import java.util.Random;
+
+/**
+ * @author WanJl
+ * @version 1.0
+ * @title Demo14
+ * @description
+ * @create 2025/4/26
+ */
+public class Demo14 {
+    public static void main(String[] args) {
+        /*
+            生成随机数的类:Random
+         */
+        //1、创建Random对象
+        Random ran=new Random();
+        //2、调用生成随机数的方法
+        //生成100以内的int类型的随机数。范围是大于等于0,小于100。
+        int i = ran.nextInt(100);
+        System.out.println(i);
+    }
+}