日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

一步带你了解java程序逻辑控制

發布時間:2025/3/20 编程问答 15 豆豆
生活随笔 收集整理的這篇文章主要介紹了 一步带你了解java程序逻辑控制 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

目錄

一.java中的程序邏輯分類

1.順序結構:

2.分支結構

(1)單分支結構(if語句)

(2)多分支結構(if-else if-else)

(3)switch語句

注意事項:

3循環結構

(1)while循環

注意事項

(2)break與continue

(2)for循環

(3)do-while循環結構

注意事項:

二 java 中的輸入與輸出

1? 輸出到控制臺

2 從鍵盤輸入

三 習題練習


一.java中的程序邏輯分類

1.順序結構:

此類代碼比較簡單,就代碼一步一步的按照順序執行。

System.out.println("a"); System.out.println("b"); System.out.println("c"); // 運行結果 a b c

2.分支結構

(1)單分支結構(if語句)

基本語法格式1:

if(布爾表達式){//條件滿足時執行代碼 }

基本語法格式2:

if(布爾表達式){//條件滿足時執行代碼 }else{//條件不滿足時執行代碼 }

(2)多分支結構(if-else if-else)

語法格式:

if(布爾表達式){//條件滿足時執行代碼 }else if(布爾表達式){//條件滿足時執行代碼 }else{//條件都不滿足時執行代碼 }

1 注意事項1:懸垂else問題

int x = 10; int y = 10; if (x == 10) if (y == 10)System.out.println("aaa"); elseSystem.out.println("bbb");

同C語言一樣,else與最近的if進行匹配,但在實際的開發中會增加代碼閱讀的難度,最好要加上大括號,避免這種懸垂else問題。

2 注意事項2:代碼風格問題

// 風格1 int x = 10; if (x == 10) {// 滿足條件 } else {// 不滿足條件 } // 風格2 int x = 10; if (x == 10) {// 滿足條件 } else {// 不滿足條件 }

在java中我們一般推薦使用風格1,把if/else放在同一行

3 注意事項三:分號問題

int x = 20; if (x == 10); {System.out.println("hehe"); } // 運行結果 hehe

因為這里有這個分號,導致分號成為if的語句體,從而使得{}中的代碼與if無關

(3)switch語句

基本語法格式:

switch(整數|枚舉|字符|字符串){case 內容1 : {內容滿足時執行語句;[break;]}case 內容2 : {內容滿足時執行語句;[break;]}...default:{內容都不滿足時執行語句;[break;]}

switch中的值不一樣,就會執行不同的case語句,遇到break才結束,不然會一直往下執行。switch值case如果都沒有與之對應,就會執行默認的default語句

注意事項:

1.break不要遺落,否則會失去多分支的效果

int day = 1; switch(day) {case 1:System.out.println("星期一");// break;case 2:System.out.println("星期二");break; } // 運行結果 星期一 星期二

2注意switch中的值只有整數|枚舉|字符|字符串才能符合

double num = 1.0; switch(num) {case 1.0:System.out.println("hehe");break;case 2.0:System.out.println("haha");break; } // 編譯出錯 Test.java:4: 錯誤: 不兼容的類型: 從double轉換到int可能會有損失

在java中,在8中基本數據類型不能做switch參數的數據類型:long,float,double,boolean

3 switch不能表達復雜的條件

// 例如: 如果 num 的值在 10 到 20 之間, 就打印 hehe // 這樣的代碼使用 if 很容易表達, 但是使用 switch 就無法表示. if (num > 10 && num < 20) {System.out.println("hehe"); }

4 switch支持嵌套的,但是很丑,switch的局限還是比較大的。

3循環結構

(1)while循環

基本語法格式:

while(循環條件){ 循環語句; }

循環條件為true就執行,false則退出循環

注意事項

1.和if類似,while后面的{}可以不加,但不加只能支持一條語句

2和if類似,while后面的{建議與while寫在同一行

3和if類似,while后面不要多加分號,否則導致循環不能正確執行

int num = 1; while (num <= 10); { System.out.println(num); num++; } // 執行結果,此時 ; 為 while 的語句體(這是一個空語句), 實際的 { } 部分和循環無關. 此時循環條件 num <= 10 恒成立, 導致代碼 死循環了 [無任何輸出, 程序死循環]

(2)break與continue

1 break就是讓循環提前結束

//找到 100 - 200 中第一個 3 的倍數 int num = 100; while (num <= 200) { if (num % 3 == 0) { System.out.println("找到了 3 的倍數, 為:" + num); break; } num++; } // 執行結果 找到了 3 的倍數, 為:102

2 continue就是跳過本次循環,進入下一次的循環

//找到 100 - 200 中第一個 3 的倍數 int num = 100; while (num <= 200) { if (num % 3 != 0) { num++; // 這里的 ++ 不要忘記! 否則會死循環. continue; } System.out.println("找到了 3 的倍數, 為:" + num); num++; } //執行到 continue 語句的時候, 就會立刻進入下次循環(判定循環條件), 從而不會執行到下方的打印語句.

(2)for循環

基本語法格式:

for(表達式1;表達式2;表達式3){ 循環體; } //表達式1: 用于初始化循環變量. //表達式2: 循環條件 //表達式3: 更新循環變量.

注意事項同while

(3)do-while循環結構

基本語法格式

do{ 循環語句; }while(循環條件);

一般先執行語句在判定條件

注意事項:

不要忘記while后面還有分號

二 java 中的輸入與輸出

1? 輸出到控制臺

基本語法

System.out.println(a); // 輸出一個字符串, 帶換行 System.out.print(a); // 輸出一個字符串, 不帶換行 Systemprintln 輸出的內容自帶 \n, print 不帶 \n

println是自帶\n的,print是不帶\n的

printf的輸出同C語言中的printf一致

2 從鍵盤輸入

1 使用Scanner讀取字符串/整數/浮點數

import java.util.Scanner; // 需要導入 util 包 Scanner sc = new Scanner(System.in); System.out.println("請輸入你的姓名:"); String name = sc.nextLine(); System.out.println("請輸入你的年齡:"); int age = sc.nextInt(); System.out.println("請輸入你的工資:"); float salary = sc.nextFloat(); System.out.println("你的信息如下:"); System.out.println("姓名: "+name+"\n"+"年齡:"+age+"\n"+"工資:"+salary); sc.close(); // 注意, 要記得調用關閉方法 // 執行結果 請輸入你的姓名: 張三 請輸入你的年齡: 18 請輸入你的工資: 1000 你的信息如下: 姓名: 張三 年齡:18 工資:1000.0

2 使用Scanner循環讀取N個數字

Scanner sc = new Scanner(System.in); double sum = 0.0; int num = 0; while (sc.hasNextDouble()) { double tmp = sc.nextDouble(); sum += tmp; num++; } System.out.println("sum = " + sum); System.out.println("avg = " + sum / num); // 執行結果 10 40.0 50.5 ^Z sum = 150.5 avg = 30.1 sc.close();

注意事項:

當循環輸入多個數據時,使用ctrl+z結束輸入(Windows上使用ctrl+z,linux/mac上使用ctrl+d)

三 習題練習

最重要的法寶當然還得是多做多練,多理解,這里也為大家提供了相應的習題進行練習鏈接:https://mp.csdn.net/mp_blog/creation/editor/120815489

總結

以上是生活随笔為你收集整理的一步带你了解java程序逻辑控制的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。