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.out.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);
}
}
心得:多分支,外層判斷是否會員,內層判斷達到折扣
java基礎---選擇結構(一)