這一小節,我們看看if語句的用法,最主要是相等的判斷。對於數字還有大於小於的 判斷。
package lession5;
/**
* 老紫竹JAVA基礎培訓(5),IF語句的使用.<br>
*
* @author 老紫竹 JAVA世紀網(java2000.net)
*
*/
public class Lession5 {
public static void main(String[] args) {
// ----------------------------------------
// 普通的整數等基礎數據的判斷
// 使用 == 進行判斷
int number = 1;
if (number == 1) {
System.out.println("Number 等於 1");
} else {
System.out.println("Number 不等於 1");
}
// 進行小於和大於的判斷
// 限數字類型
if (number < 2) {
System.out.println("Number 小於2");
}
if (number >= 0) {
System.out.println("Number 大於等於0");
}
// 不等於判斷
if(number!=0){
System.out.println("Number 不等於0");
}
// 整數的對象類型Integer
// 在 JDK 5.0及以後版本,可以使用 == 進行判斷
// 使用自動打包功能
Integer number2 = new Integer(1);
if (number2 == 1) {
System.out.println("Number2 等於 1");
} else {
System.out.println("Number2 不等於 1");
}
// 在任何JDK版本,都可以用 equals方法進行判斷
if (number2.equals(1)) {
System.out.println("Number2 等於 1");
} else {
System.out.println("Number2 不等於 1");
}
// ----------------------------------------
// 字符串的判斷
// 在任何時候,我們都建議您使用equals進行判斷
// 而不是用==進行
String str = new String("java2000");
if (str == "java2000") {
System.out.println("str2 等於 java2000");
} else {
System.out.println("str2 不等於 java2000");
}
// 用equals的正確做法,當然結果總是正確的
if ("java2000".equals(str)) { // 修正,以前是 if (str.equals ("java2000")) {
System.out.println("str2 等於 java2000");
} else {
System.out.println("str2 不等於 java2000");
}
// 特殊的if語句
if (str instanceof String) {
System.out.println("str 是一個 String");
}
Object obj = str;
if (!(obj instanceof Integer)) {
System.out.println("obj 不是一個 Inreger");
}
}
}
測試:
1 測試其它數據類型的等於,大於,小於,大於等於,小於等於,不等於的判斷。
2 測試其它對象類型的 equals判斷
3 測試其它對象類型的 instanceof 的判斷
重要提示:
1 對於對象,請只用equals進行是否相等的判斷。
if和else是配套使用的,如果多個if判斷,可以用如下的格式(其中的語句為例子而已 )
if(1==1){
}else if(2==2){
}else{
}
2 代碼順序
if ("java2000".equals(str)) {
比
if (str.equals("java2000")) {
更加安全,可以防止 str==null的情況下,出現 NullPointerException 問題