這一節我學習java語言中的流程控制語句之中的判斷語句.
首先我們看看if語句的不同格式
看下面的代碼
~~~
class IfDemo
{
public static void main(String[] args)
{
//判斷語句
/**************************************
if語句的第一種格式:
if(條件表達式)
{
執行語句;
}
*/
int x = 3;
if(x > 1)
{//如果沒有大括號,if就只能控制離它最近的那條語句
System.out.println("yes");
}
/**************************************
if語句的第二種格式:
if(條件表達式)
{
執行語句;
}
else//否則
{
執行語句;
}
*/
if(x > 1)
{
System.out.println("yes");
}
else
{
System.out.println("no");
}
int a = 3,b;
if(a>1)
b = 100;
else
b = 200;
//b = a>1?100:200;
//三元運算符就是if else的語句簡寫格式.
//簡寫格式什么時候用?
//當if else運算后有一個具體結果時,可以簡化寫成三元運算符.
System.out.println("b="+b);
/*****************************************
if語句的第三種格式:
if(條件表達式)
{
執行語句;
}
else if(條件表達式)
{
執行語句;
}
......
else
{
執行語句;
}
只有一個代碼塊被執行
*/
}
}
~~~
從上面的代碼我們看到了三種不同格式的if語句,看到了三元運算符就是if else的語句簡寫格式.并且是當if else運算有一個具體結果時可以互用.
我們再看一下代碼塊的作用吧
~~~
public static void main(String[] args)
{
int m = 89;//兩個打印都打印
/*
局部代碼塊可以定義局部變量的生命同期。
*/
{//局部代碼塊
int n = 89;//n的作用域是這個代碼塊
System.out.println(m);
System.out.println(n);
}
System.out.println(m);
System.out.println(n);//提示找不到變量n,這就說明n的作用域就是上面的代碼塊
}
~~~
結果:

從結果看到了代碼塊中變量出了代碼塊就已經被釋放掉了,也就是說代碼塊中定義的局部變量的作用域就是代碼塊.
最后我們看一個if語句的小例子.
~~~
class IfTest2
{
public static void main(String[] args)
{
/*
一年有四季。
春季:3 4 5
夏季:6 7 8
秋季:9 10 11
冬季:12 1 2
根據用戶輸入的月份,給出對應的季節。
*/
int month=12;
if(month<1 || month>12)
System.out.println(month+"月沒有對應的季節");
else if(month>=3 && month<=5)
System.out.println(month+"月是春季");
else if(month>=6 && month<=8)
System.out.println(month+"月是夏季");
else if(month>=9 && month<=11)
System.out.println(month+"月是秋季");
else
System.out.println(month+"月是冬季");
if(month==3||month==4||month==5)
System.out.println(month+"月是春季");
else if(month==6||month==7||month==8)
System.out.println(month+"月是夏季");
else if(month==9||month==10||month==11)
System.out.println(month+"月是秋季");
else if(month==12||month==1||month==2)
System.out.println(month+"月是冬季");
else
System.out.println(month+"月沒有對就的季節");
}
}
~~~
輸出結果兩個都是冬季.
- 前言
- 1.1 基本常識
- 1.2 Java語言概述
- 1.3 Java語言的環境搭建
- 1.4 Java程序開發之初體驗--Hello World
- 2.1 關鍵字
- 2.2 標識符
- 2.3 注釋
- 2.4 常量
- 2.5 進制掃盲
- 2.6 變量和數據類型(1)
- 2.7 變量和數據類型(2)
- 2.8 運算符
- 3.1 if語句
- 3.2 switch語句
- 3.3 while和do-while語句
- 3.4 for語句
- 3.5 for循環的嵌套
- 3.6 break語句與continue語句
- 4.1 函數的定義
- 4.2 定義函數的兩個明確
- 4.3 函數的內存加載過程
- 4.4 函數的重載
- 5.1 數組的定義
- 5.2 數組的內存分配及特點
- 5.3 數組操作中常見問題
- 5.4 數組常用操作(1)
- 5.5 數組常用操作(2)
- 5.6 二維數組
- 6.1 面向對象的概述
- 6.2 類與對象的關系
- 6.3 對象的內存體現
- 6.4 成員變量與局部變量
- 6.5 類類型參數與匿名對象
- 6.6 基本數據類型參數與引用數據類型參數的傳遞過程
- 6.7 封裝
- 7.1 構造函數概述與默認構造函數
- 7.2 構造函數與一般函數的區別
- 7.3 構造函數的重載
- 7.4 構造函數的內存加載
- 7.5 構造函數需要注意的幾個細節
- 7.6 this關鍵字的原理
- 7.7 this關鍵字的細節與應用
- 8.1 static關鍵字之特點
- 8.2 成員變量與靜態變量的區別
- 8.3 static關鍵字使用的注意細節
- 8.4 main函數的解析與細節
- 8.5 static關鍵字的使用場景
- 8.6 靜態的內存加載
- 8.7 靜態代碼塊
- 8.8 構造代碼塊
- 9.1 繼承
- 9.2 單繼承與多重繼承
- 9.3 子父類中成員變量特征體現