Java-笔记4

    /*
    如何从键盘获取不同类型的变量:需要使用Scanner类

    具体实现步骤:
    1.导包:import java.util.Scanner;
    2.Scanner的实例化:Scanner scan = new Scanner(System.in);
    3.调用Scanner类的相关方法(next() / nextXxx()),来获取指定类型的变量

    注意:
    需要根据相应的方法,来输入指定类型的值。如果输入的数据类型与要求的类型不匹配时,会报异常:InputMisMatchException
    导致程序终止。
    */
    //1.导包:import java.util.Scanner;
    import java.util.Scanner;

    class ScannerTest{
        
        public static void main(String[] args){
            //2.Scanner的实例化
            Scanner scan = new Scanner(System.in);
            
            //3.调用Scanner类的相关方法
            System.out.println("请输入你的姓名:");
            String name = scan.next();
            System.out.println(name);

            System.out.println("请输入你的芳龄:");
            int age = scan.nextInt();
            System.out.println(age);

            System.out.println("请输入你的体重:");
            double weight = scan.nextDouble();
            System.out.println(weight);

            System.out.println("你是否相中我了呢?(true/false)");
            boolean isLove = scan.nextBoolean();
            System.out.println(isLove);

            //对于char型的获取,Scanner没有提供相关的方法。只能获取一个字符串
            System.out.println("请输入你的性别:(男/女)");
            String gender = scan.next();//"男"
            char genderChar = gender.charAt(0);//获取索引为0位置上的字符
            System.out.println(genderChar);
            

        }

    }
/*
岳小鹏参加Java考试,他和父亲岳不群达成承诺:
如果:
成绩为100分时,奖励一辆BMW;
成绩为(80,99]时,奖励一台iphone xs max;
当成绩为[60,80]时,奖励一个 iPad;
其它时,什么奖励也没有。
请从键盘输入岳小鹏的期末成绩,并加以判断

说明:
1. else 结构是可选的。
2. 针对于条件表达式:
   > 如果多个条件表达式之间是“互斥”关系(或没有交集的关系),哪个判断和执行语句声明在上面还是下面,无所谓。
   > 如果多个条件表达式之间有交集的关系,需要根据实际情况,考虑清楚应该将哪个结构声明在上面。
   > 如果多个条件表达式之间有包含的关系,通常情况下,需要将范围小的声明在范围大的上面。否则,范围小的就没机会执行了。
*/

import java.util.Scanner;
class IfTest {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        
        System.out.println("请输入岳小鹏期末成绩:(0-100)");
        int score = scan.nextInt();

        if(score == 100){
            System.out.println("奖励一辆BMW");//be my wife!  BMW <---> MSN
        }else if(score > 80 &&  score <= 99){
            System.out.println("奖励一台iphone xs max");
        }else if(score >= 60 && score <= 80){
            System.out.println("奖励一个 iPad");
        }else{
            System.out.println("什么奖励也没有");
        }
    }
}
/*
编写程序:由键盘输入三个整数分别存入变量num1、num2、num3,
对它们进行排序(使用 if-else if-else),并且从小到大输出。

说明:
1. if-else结构是可以相互嵌套的。
2. 如果if-else结构中的执行语句只有一行时,对应的一对{}可以省略的。但是,不建议大家省略。
*/
import java.util.Scanner;
class IfTest2 {
    public static void main(String[] args) {
        
        Scanner scanner = new Scanner(System.in);

        System.out.println("请输入第一个整数:");
        int num1 = scanner.nextInt();
        System.out.println("请输入第二个整数:");
        int num2 = scanner.nextInt();
        System.out.println("请输入第三个整数:");
        int num3 = scanner.nextInt();

        if(num1 >= num2){
            if(num3 >= num1)
                System.out.println(num2 + "," + num1 + "," + num3);
            else if(num3 <= num2)
                System.out.println(num3 + "," + num2 + "," + num1);
            else
                System.out.println(num2 + "," + num3 + "," + num1);
            
        
        }else{
            if(num3 >= num2)
                System.out.println(num1 + "," + num2 + "," + num3);
            else if(num3 <= num1)
                System.out.println(num3 + "," + num1 + "," + num2);
            else
                System.out.println(num1 + "," + num3 + "," + num2);
            
        }

    }
}
class IfExer {
    public static void main(String[] args) {
        int x = 4;
        int y = 1;
        if (x > 2) 
            if (y > 2) 
                System.out.println(x + y);
                //System.out.println("atguigu");
            else //就近原则
                System.out.println("x is " + x);
        

        //课后练习3:测算狗的年龄
        int dogAge = 6;
        if(dogAge >= 0 && dogAge <= 2){
            System.out.println("相当于人的年龄:" + dogAge * 10.5);
        }else if( dogAge > 2){
            System.out.println("相当于人的年龄:" + (2 * 10.5 + (dogAge - 2) * 4));
        }else{
            System.out.println("狗狗还没出生呢!");
        }

        //课后练习4:如何获取一个随机数:10 - 99
        int value = (int)(Math.random() * 90 + 10);// [0.0,1.0) --> [0.0,90.0) --->[10.0, 100.0) -->[10,99]
        System.out.println(value);
        //公式:[a,b]  :  (int)(Math.random() * (b - a + 1) )+ a
    }
}
/*
大家都知道,男大当婚,女大当嫁。那么女方家长要嫁女儿,当然要提出一定的条件:
高:180cm以上;富:财富1千万以上;帅:是。
如果这三个条件同时满足,则:“我一定要嫁给他!!!”
如果三个条件有为真的情况,则:“嫁吧,比上不足,比下有余。”
如果三个条件都不满足,则:“不嫁!”

*/

import java.util.Scanner;

class IfExer1 {
    public static void main(String[] args) {
        
        Scanner scan = new Scanner(System.in);
        
        System.out.println("请输入你的身高:(cm)");
        int height = scan.nextInt();
        System.out.println("请输入你的财富:(千万)");
        double wealth = scan.nextDouble();

        /*
        方式一:
        System.out.println("请输入你是否帅:(true/false)");
        boolean isHandsome = scan.nextBoolean();

        if(height >= 180 && wealth >= 1 && isHandsome){
            System.out.println("我一定要嫁给他!!!");
        }else if(height >= 180 || wealth >= 1 || isHandsome){
            System.out.println("嫁吧,比上不足,比下有余。");
        }else{
            System.out.println("不嫁!");
        }
        */

        //方式二:
        System.out.println("请输入你是否帅:(是/否)");
        String isHandsome = scan.next();

        
        if(height >= 180 && wealth >= 1 && isHandsome.equals("是")){
            System.out.println("我一定要嫁给他!!!");
        }else if(height >= 180 || wealth >= 1 || isHandsome.equals("是")){
            System.out.println("嫁吧,比上不足,比下有余。");
        }else{
            System.out.println("不嫁!");
        }
    }
}

猜你喜欢

转载自www.cnblogs.com/LXL616/p/10805957.html