Java中的邏輯結(jié)構(gòu)詳解
Java中的邏輯結(jié)構(gòu)
邏輯結(jié)構(gòu) Java中的邏輯結(jié)構(gòu) 順序結(jié)構(gòu)分支結(jié)構(gòu)循環(huán)結(jié)構(gòu)
順序結(jié)構(gòu)
順序結(jié)構(gòu)顧名思義,就是按照代碼的順序依次往下執(zhí)行,這個不必多講
分支結(jié)構(gòu)
分支結(jié)構(gòu)又可以細(xì)分為兩個:
if…else…這兩個單詞相信都認(rèn)識,翻譯成中文就是我們平時所說的如果…就…,那么在Java中該怎么用呢:
①:if else:
它的基本語法結(jié)構(gòu)如下:
if(判斷條件){
語句1;
}else{
語句2;
當(dāng)判斷條件為真的時候,執(zhí)行語句1,否則執(zhí)行語句2
示例:
import java.util.*;
public class TestDemo13 {
public static void main(String[]args) {
Scanner scanner = new Scanner (System.in);
int n = scanner.nextInt();
if (n>=5) {
System.out.println("hello");
}else{
System.out.println("hehe");
}
}
}
這段代碼的意思就是我們輸入一個數(shù)字,如果這個數(shù)字大于等于5了,滿足了if條件,就執(zhí)行我們if里面的語句,如果不滿足,就執(zhí)行下面的語句。
注:if后面的括號里面只能是布爾表達(dá)式,不能是數(shù)學(xué)表達(dá)式,比如說if(5<=a&&a<=20),不能寫成if(5<=a<=20)。
還有一種情況:
import java.util.*;
public class TestDemo13 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int n = scanner.nextInt();
int j = scanner.nextInt();
if (n >= 5) {
if (j >= 4) {
System.out.println("hello");
} else {
System.out.println("hehe");
}
}
這里的else只能跟最近的那個if相匹配。
② if …else if … else… :
它的基本語法結(jié)構(gòu)如下:
if(判斷條件) {
語句1;
}else if(判斷條件) {
語句2;
}else{
語句2;
當(dāng)if的判斷條件為真的時候,執(zhí)行語句1,當(dāng)else if的判斷條件為真的時候,執(zhí)行語句2,否則執(zhí)行語句3
示例:
import java.util.*;
public class TestDemo13 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int n = scanner.nextInt();
if (n == 5) {
System.out.println("haha");
} else if (n > 5) {
System.out.println("hehe");
} else {
System.out.println("hello");
}
}
}
這段代碼的意思是如果n等于5了,就輸出哈哈,如果n大于5了,就輸出呵呵,如果n小于5了,就輸出hello,相當(dāng)于在if…else的基礎(chǔ)上把判斷條件劃分得更細(xì),里面的else if可以加任意個,示有多少種情況而定。
switch():
它的基本語法如下:
in a = 5;
switch(a){
case 1:
語句;
break;
case 2:
語句;
break;
default: //當(dāng)哪個條件都不滿足的時候
語句3;
break;
示例:
import java.util.*;
public class TestDemo13 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int n = scanner.nextInt();
switch (n) {
case 1:
System.out.println("hehe");
break;
case 2:
System.out.println("haha");
break;
case 3:
System.out.println("hello");
break;
}
}
}
switch后面的括號就是判斷條件,下面的case如果滿足判斷條件,則執(zhí)行相應(yīng)的語句,不能做switch參數(shù)的類型有:long float double boolean。
注:一定要寫break,如果不寫的話case語句會依次往下執(zhí)行,從而失去了分支的效果。
循環(huán)結(jié)構(gòu)
循環(huán)結(jié)構(gòu)指在滿足循環(huán)條件的情況下,一直執(zhí)行,直到循環(huán)條件不滿足為止,循環(huán)條件大致可分為三種:
while循環(huán)
“while”這個單詞在英語中譯為“當(dāng)什么的時候”的意思,在Java中也可以這樣理解,它的基本結(jié)構(gòu)如下:
while(循環(huán)條件) {
循環(huán)語句;
}
當(dāng)循環(huán)條件為真的時候,執(zhí)行循環(huán)語句,否則跳出循環(huán),注:循環(huán)條件只能是布爾表達(dá)式
示例:打印1到5的數(shù)字
public class TestDemo14 {
public static void main(String[] args) {
int a = 1;//初始條件
while(a<=5) {//判斷循環(huán)條件
System.out.println(a);
a++;//步進(jìn),指定循環(huán)的結(jié)束
}
}
}
while循環(huán)也可以嵌套使用
示例:計(jì)算1到5的階乘的和
public class TestDemo14 {
public static void main(String[] args) {
int sum = 0;
int a = 1;//初始條件
while (a <= 5) {//判斷循環(huán)條件
int i = 1;
int ret = 1;
while (i <= a) {
ret *= i;
i++;
}
a++;
sum += ret;
}
System.out.println(sum);
}
}
for循環(huán) 它的基本結(jié)構(gòu)如下:
for(表達(dá)式1;表達(dá)式2;表達(dá)式3) {
循環(huán)體;
執(zhí)行順序:先執(zhí)行表達(dá)式1,且只執(zhí)行一次,也叫做循環(huán)的初始條件,然后判斷表達(dá)式是否為真,然后再循環(huán)體,第四步,執(zhí)行表達(dá)式3;一直循環(huán),直到為假
示例:打印1到10之間的數(shù)字
public class TestDemo14 {
public static void main(String[] args) {
int n = 1;
for (; n <= 10; n++) { //i可以定義到外部,i++也可以放到下面
System.out.println(n);
}
}
}
for循環(huán)也可以嵌套使用
示例:計(jì)算1——5的階乘的和
public class TestDemo14 {
public static void main(String[] args) {
int sum = 0;
int n = 1;
for (; n <= 5; n++) {
int i = 1;
int ret = 1;
for (; i <= n; i++) {
ret *= i;
}
sum += ret;
}
System.out.println(sum);
}
}
do while 它的基本結(jié)構(gòu)如下:
do {
循環(huán)語句:
}while(循環(huán)條件)//先執(zhí)行一次循環(huán)語句,再判定循環(huán)條件
示例:
public class TestDemo14 {
public static void main(String[] args) {
int sum = 0;
do {
System.out.println("haha");
} while (sum != 0);
}
}
以上就是Java中三個邏輯結(jié)構(gòu)的基本知識,和c語言沒有多大的區(qū)別,建議大家多去找一些習(xí)題練一下,讓自己的大腦里有一個java項(xiàng)目的大概框架。
到此這篇關(guān)于Java中的邏輯結(jié)構(gòu)的文章就介紹到這了,更多相關(guān)Jav邏輯結(jié)構(gòu)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
java 從int數(shù)組中獲取最大數(shù)的方法
這篇文章主要介紹了java 從int數(shù)組中獲取最大數(shù)的方法,需要的朋友可以參考下2017-02-02
springboot如何實(shí)現(xiàn)國際化配置
這篇文章主要介紹了springboot如何實(shí)現(xiàn)國際化配置問題,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-06-06
Spring Boot Mail QQ企業(yè)郵箱無法連接解決方案
這篇文章主要介紹了Spring Boot Mail QQ企業(yè)郵箱無法連接解決方案,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-09-09
Java?C++分別實(shí)現(xiàn)滑動窗口的最大值
這篇文章主要介紹了分別通過Java和C++實(shí)現(xiàn)滑動窗口最大值,即給定一個數(shù)組?nums?和滑動窗口的大小?k,請找出所有滑動窗口里的最大值。感興趣的可以了解一下2021-12-12
ssm框架下web項(xiàng)目,web.xml配置文件的作用(詳解)
下面小編就為大家?guī)硪黄猻sm框架下web項(xiàng)目,web.xml配置文件的作用(詳解)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-10-10
IDEA運(yùn)行導(dǎo)入的javaweb項(xiàng)目tomcat正常,但是運(yùn)行失敗404問題
這篇文章主要介紹了IDEA運(yùn)行導(dǎo)入的javaweb項(xiàng)目tomcat正常但是運(yùn)行失敗404問題,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-07-07
SpringBoot中的maven插件spring-boot-maven-plugin使用
這篇文章主要介紹了SpringBoot中的maven插件spring-boot-maven-plugin使用方式,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2023-12-12

