java基础---选择结构(一)

1.什么是if选择结构?

可以处理单一或组合条件的情况(if选择结构是根据条件判断之后再做处理)

基本的if选择结构

     if ( 条件 ) {

     //代码块

}

 条件必须是boolean值

举例

import java.util.Scanner;

public class GetPrize {

public static void main(String[] args) {

      Scanner input = new Scanner(System.in);

      System.out.print("请输入一个成绩: "); //提示输入Java成绩

      int score = input.nextInt(); //从控制台获取张浩的Java成绩

if ( score > 90 ) { //判断是否大于90分

       System.out.println("老师说:不错,奖励一个MP4!");

 }

}

}

2.使用复杂条件下的if选择结构?

&&    条件1 && 条件2    仅仅两个条件同时为真,结果为真

||       条件1 || 条件2       只要两个条件有一个为真,结果为真

!        ! 条件                    条件为真时,结果为假 条件为假时,结果为真

举例

import java.util.Scanner;

public class Case11 {

 public static void main(String[] args) {

    Scanner input=new Scanner(System.in);

    System.out.println("请输入java成绩:");

    int java=input.nextInt();

    System.out.println("请输入音乐成绩:");

    int yinyue=input.nextInt();  

    if(( java>98 && yinyue>80 )||( java==100 && yinyue>70 )){

    System.out.println("奖励");

 }    

}

}

心得:多个条件下使用逻辑运算符,连接起来

3.随机数字的使用?

1.产生double型  它的范围在  [0,1)

public class Case12 {

public static void main(String[] args) {

//随机数字

double a=Math.random();

       System.out.println(a);

}

}

2.产生int型

public class Case12 {

public static void main(String[] args) {

       //随机数字

       double a=Math.random();

       int b=(int)(a*10);

       System.out.println(b);

}

}

4.使用if-else选择结构?

可以处理简单的条件分支情况(if-else选择结构实现对第一个的否定)

举例1:实现幸运抽奖

import java.util.Scanner;

public class Case13 {

public static void main(String[] args) {

    Scanner input=new Scanner(System.in);

   System.out.println("请输入您的4位会员号:");

   int id=input.nextInt();

   int bai=id%1000/100;

   int random=(int)(Math.random()*10);

   if(bai==random){

   System.out.println("中奖");

   }

   else{

   System.out.println("继续");

}

}

}

心得:1.输入会员号2.随机数3.比较

举例2:会员信息录入

import java.util.Scanner;

public class Case14 {

public static void main(String[] args) {

    Scanner input=new Scanner(System.in);

    System.out.println("我行我素购物系统>>客户信息管理>>添加客户信息 :");

    System.out.println("请输入会员卡号:");

    int id=input.nextInt();

    if(id>9999||id<1000){

     System.out.println("请输入4位ID");

    return;

    }

    System.out.println("请输入会员生日:");

    String birthday=input.next();   

    System.out.println("请输入积分:");

    int points=input.nextInt();

}

}

心得:return  停止程序

5.多重if选择结构?

可以处理分段的条件分支情况(多个条件:几个连续区间判断)

举例1:实现学员的结业考试成绩

import java.util.Scanner;

public class Case15 {

public static void main(String[] args) {

     Scanner input=new Scanner(System.in);

    System.out.println("请输入您的成绩");

    double mark=input.nextDouble();

    if(mark>=80){

   System.out.println("良好");

   }

   else if(mark>=60){

   System.out.println("及格");

   }

   else{

  System.out.println("不及格");

 }

}

}

心得:else不必写为“mark>=60 && mark<80”,条件2就是对上面的条件的否定。

6.嵌套if选择结构?

作用:可以处理复杂的条件分支情况

举例:百米赛跑

import java.util.Scanner;

public class Case16 {

public static void main(String[] args) {

    Scanner input=new Scanner(System.in);

    System.out.println("请输入运动员成绩:");

    int score=input.nextInt();

    if(score<10){

                System.out.println("请输入运动员性别:");

                String gender=input.next();

               if(gender.equals("人")){

                          System.o ut.println("男子组");

                          }

               else if(gender.equals("女")){

                         System.out.println("女子组");

                     }

   }else{

              System.out.println("没有跑入");

}

}

}

举例:实际业务购物结算

import java.util.Scanner;

public class Case17 {

public static void main(String[] args) {

         Scanner input=new Scanner(System.in);

         double cost=0;         //消费金额

        boolean isVIP=false;  //是否会员

       double discount=0;     //折扣

       double pay=0;          //支付金额

       System.out.println("请输入您的消费金额:");

       cost=input.nextDouble();

      System.out.println("请输入您的是否为会员:true-是/false-不是");

      isVIP=input.nextBoolean();

      if(isVIP==true){

                        if(cost>200){

                                    discount=0.75;

                       }else{

                                  discount=0.8;

                            }

                       }

     else{

                     if(cost>100){

                                 discount=0.9;

                     }

                    else{

                                discount=1;

                    }  

}

      pay=cost*discount;

     System.out.println("您最终支付的金额为"+pay);

}

}

心得:多分支,外层判断是否会员,内层判断达到折扣

原文地址:https://www.cnblogs.com/-lyr/p/9548729.html