Java有幾種類型的選擇語句,單向if語句,雙向if語句,嵌套if語句,switch語句和條件表達式。java
1.單向if語句app
if(radius>=0){dom
area = radius*radius*PI;ide
System.out.println("The area for the circle of radius"+radius+"is"+area);函數
}spa
若是不符合radius>=0的條件,則不執行塊內的語句,若是花括號內只有一條語句,無需進行運算,則能夠直接省略花括號。code
2.雙向if語句blog
相比於單向if,雙向if能夠在條件爲false時也能執行一些操做。圖片
if(radius>=0){
ci
area = radius*radius*PI;
System.out.println("The area for the circle of radius"+radius+"is"+area);
}
else{
System.out.println("Negative input");
}
若是radius大於等於0,計算並顯示area的結果,若是radius小於0,打印信息"Negative input"。
3.嵌套if語句
嵌套的if語句能夠實現多種選擇以及進行篩選的功能。咱們拿給學生成績分類作一個例子。
if(score>=90.0)
grade='A';
else if(score>=80.0)
grade='B';
else if(score>=70.0)
grade='C';
else if(score>=60.0)
grade='D';
else grade='F';
4.Math類生成隨機數
上一篇文章使用的是System.currentTimeMillis()產生兩個隨機數,更好的方法是使用Math類中的random()方法,調用這個方法會返回一個雙精度的隨機值d且知足0.0<=d<=1。這樣,(int)(Math.random()*10)會返回隨機的0到9之間的一位整數。咱們下面舉一個例子,首先由系統隨機產生兩個一位整數number1和number2,若是number1<number2,交換這兩個數字,提示學生回答"what is number1-number2?",以後檢查學生的答案,並顯示答案是否正確,若是不正確,系統計算答案。要注意,Math類在java.lang包中,這個包中包含基本數據類型,數學函數,字符串類等,是惟一自動引入每一個java程序的類庫,因此Math類方法調用不須要先導入。程序清單以下:
import java.util.Scanner;
/**
*
* @author mjd
*/
public class Random {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
// TODO code application logic here
int number1 = (int)(Math.random()*10);
int number2 = (int)(Math.random()*10);
if(number1<number2){
int temp=number1;
number1=number2;
number2=temp;
}
System.out.println("What is"+number1+"-"+number2+"?");
Scanner input = new Scanner(System.in);
int answer = input.nextInt();
if (number1-number2==answer)
System.out.println("You are correct!");
else
System.out.println("Your answer is wrong\n"+number1+"-"+number2+"should be"+(number1-number2));
}
}
如圖所示,若是輸入錯誤答案,會提示答案錯誤,並自動計算正確結果。
若是輸入的結果正確,輸出「you are correct」。程序正確運行,在本次程序中,爲了交換變量number1和number2,首先要使用一個臨時變量temp,用來存放number1的值,將number2的值賦給number1,而後將temp值給number2.