国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Java(三)邏輯控制(if....else,循環(huán)語句)與方法

這篇具有很好參考價值的文章主要介紹了Java(三)邏輯控制(if....else,循環(huán)語句)與方法。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

四、邏輯控制

1.if…else(常用)

1.1表達(dá)格式(三種)

  1. 小括號里面進(jìn)行判斷條件是否符合,正確執(zhí)行語句

    	 if(布爾表達(dá)式){ 
    	 	語句 
    	  }
    
  2. 在小括號里面進(jìn)行條件判斷,正確執(zhí)行語句1,錯誤執(zhí)行語句2

    		if (布爾表達(dá)式) {  
          		 語句1 
            }else{
               	語句2 
        	}
    
  3. 表達(dá)式1正確,執(zhí)行語句1,諾表達(dá)式1不正確,
    則去判斷表達(dá)式2是否正確,正確則執(zhí)行語句2,
    表達(dá)式2不正確,則去語句3。

    		 if(布爾表達(dá)式1){
    				語句1
    		}else if(布爾表達(dá)式2){
    			 	語句2
    		}else{
    				語句3
    		}
    

外入:為了能將值能夠通過鍵盤等工具,輸入到計算機里面,java為此提供了一個方法Scanner。我們不需要懂的實現(xiàn)原理,只需要知道它的作用,和實現(xiàn)方法就行。這就是java的其中一個好處。
Java(三)邏輯控制(if....else,循環(huán)語句)與方法,java,java,開發(fā)語言
如何使用?

Scanner scanner=new Scanner(System.in);
//整型接收
 int l= scanner.nextInt();//提供整型輸入
//浮點型接收
 float h= scanner.nextFloat();//提供一個浮點數(shù)輸入
//字符串接收
 String p=scanner.next();//提供了一個字符串輸入
//沒有輸入char類型的方法

將兩者結(jié)合一下:
實例1:
題目:輸入一個1~100的數(shù)字來代表一個學(xué)生的成績,并給他或她給予這門課評價

分?jǐn)?shù)在 [90, 100] 之間的,為優(yōu)秀
分?jǐn)?shù)在 [80, 90) 之前的,為良好
分?jǐn)?shù)在 [70, 80) 之間的,為中等
分?jǐn)?shù)在 [60, 70) 之間的,為及格
分?jǐn)?shù)在 [ 0, 60) 之間的,為不及格

Scanner scanner=new Scanner(System.in);
//整型接收
int score = scanner.nextInt();//提供整型輸入
 
if(score >= 90){

	System.out.println("優(yōu)秀");
	
}else if(score >= 80 && score < 90){

	System.out.println("良好");
	
}else if(score >= 70 && score < 80){

	System.out.println("中等");

}else if(score >= 60 && score < 70){

	System.out.println("及格");

}else if(score >= 0 && score < 60){

	System.out.println("不及格");
	
}else{

	System.out.println("錯誤數(shù)據(jù)");
	
}

實例2:
判斷一個年份是否是閏年(什么是閏年?就是一般年份多天的年份),如何解題?
四年一閏、百年不閏、400年再閏
用年份除以4,沒有余數(shù)的就是閏年,有余數(shù)的是平年,如果是世紀(jì)年(整百年)則是除以400。

Scanner scanner=new Scanner(System.in);
//整型接收
int year = scanner.nextInt();//輸入年份

if (year % 100 == 0) {
	//判斷世紀(jì)閏年
	if (year % 400 == 0) {
	
		System.out.println("是閏年");
		
	} else {
	
		System.out.println("不是閏年");
		
	}
} else {
	//判斷普通閏年
	if (year % 4 == 0) {
	
		System.out.println("是閏年");
		
	} else {
		System.out.println("不是閏年");
		
	}
}

2.switch…case(用的少)

2.1表達(dá)式

		switch(表達(dá)式){
			case 常量值1:{
					語句1;
					break;//終止語句
					}
		case 常量值2:{
					語句2;
					break;//終止語句
					}
			.....
			
			default:{
					內(nèi)容都不滿足時執(zhí)行語句;
					break;//終止語句
					}
				}
  1. 先計算表達(dá)式的值
  2. 和case依次比較,一旦有響應(yīng)的匹配就執(zhí)行該項下的語句,直到遇到break時結(jié)束
  3. 當(dāng)表達(dá)式的值沒有與所列項匹配時,執(zhí)行default

實例1
輸入一個數(shù)(1~10)的數(shù),判斷它是星期幾

Scanner scanner=new Scanner(System.in);
//整型接收
int day = scanner.nextInt();//輸入日期

switch(day) {
	case 1:
		System.out.println("星期一");
		break;
	case 2:
		System.out.println("星期二");
		break;
	case 3:
		System.out.println("星期三");
		break;
	case 4:
		System.out.println("星期四");
		break;
	case 5:
		System.out.println("星期五");
		break;
	case 6:
		System.out.println("星期六");
		break;
	case 7:
		System.out.println("星期日");
		break;
	default:
		System.out.println("這個數(shù)不在日期中");
		break;
}

注意:

  1. 多個case后的常量值不可以重復(fù)
  2. switch的括號內(nèi)只能是以下類型的表達(dá)式:
    基本類型:byte、char、short、int,注意不能是long類型
    引用類型:String常量串、枚舉類型

3.while(常用)

3.1語法格式

  1. 循環(huán)條件為 true, 則執(zhí)行循環(huán)語句; 當(dāng)條件不滿足時為false,則結(jié)束循環(huán).

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

實例1
計算 1 ~ 100 的和

int n = 1;

int result = 0;

while (n <= 100) {

	result += n;
	n++;
	
}

System.out.println(num);//5050

實例2:
計算 5 的階乘

int n = 1;
int result = 1;
while (n <= 5) {
	result *= n;
	n++;
}
System.out.println(num);//120

實例3
計算 1! + 2! + 3! + 4! + 5!的和

int num = 1;
int sum = 0;
// 外層循環(huán)負(fù)責(zé)求階乘的和
while (num <= 5) {

		int factorResult = 1;
		
		int tmp = 1;
// 里層循環(huán)負(fù)責(zé)完成求階乘的細(xì)節(jié).
		while (tmp <= num) {
		
				factorResult *= tmp;
				tmp++;
				
				}
				
		sum += factorResult;
		num++;
}

System.out.println("sum = " + sum);

注意:
循環(huán)內(nèi)的條件一定要設(shè)置好,諾是沒有設(shè)置好就會一直循環(huán),直到程序吃完你的所有運算資源。然后崩潰。

3.2關(guān)鍵字beak:

break 的功能是讓循環(huán)提前結(jié)束.

實例:找到 100 - 200 中第一個 3 的倍數(shù)

int num = 100;
while (num <= 200) {
		if (num % 3 == 0) {
				System.out.println("找到了 3 的倍數(shù), 為:" + num);//102
				break;
		}
		num++;
}

3.3關(guān)鍵字 continue:

continue 的功能是跳過這次循環(huán), 立即進(jìn)入下次循環(huán)
實例
找到 100 - 200 中所有 3 的倍數(shù)

int num = 100;
while (num <= 200) {

		if (num % 3 != 0) {
		
			num++; 
			continue;
		}
		System.out.println("找到了 3 的倍數(shù), 為:" + num);
		num++;
}

4.for…(常用)

4.1語法格式

表達(dá)式1: 用于初始化循環(huán)變量初始值設(shè)置,在循環(huán)最開始時執(zhí)行,且只執(zhí)行一次
表達(dá)式2: 循環(huán)條件,滿足條件,則繼續(xù)循環(huán),否則循環(huán)結(jié)束
表達(dá)式3: 循環(huán)變量變化方式

		for(表達(dá)式1;布爾表達(dá)式2;表達(dá)式3){
		
				表達(dá)式4;
		}

如何執(zhí)行?
(1,2,3,4)—>(2,3,4)—>(2,3,4)—>(2,3,4)—>(2不滿足條件)終止循環(huán)

實例1
計算 1 ~ 100 的和

int sum = 0;

for (int i = 1; i <= 100; i++) {

		sum += i;
}

System.out.println("sum = " + sum);5050


實例3
計算 1! + 2! + 3! + 4! + 5!的和

int sum = 0;
for (int i = 1; i <= 5; i++) {

		int tmp = 1;

		for (int j = 1; j <= i; j++) {
				tmp *= j;
			}
			sum += tmp;
}

System.out.println("sum = " + sum);

注意:
和while循環(huán)一樣,結(jié)束單趟循環(huán)用continue,結(jié)束整個循環(huán)用break

5.while…do(不常用)

5.1基本語法

  1. 先執(zhí)行循環(huán)語句, 再判定循環(huán)條件,循環(huán)條件成立則繼續(xù)執(zhí)行,否則循環(huán)結(jié)束。

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

實例

int num = 1;

do {
	System.out.println(num);
	num++;
} while (num <= 10);

邏輯控制小總結(jié)

1.常用for,if,while,等邏輯控制
2.switch,case,break,要一起用
3.break終止當(dāng)前循環(huán),continue跳出這次循環(huán)

五、方法

在實際開發(fā)中,有一些代碼是會被重復(fù)使用的。首先我們假設(shè)一個應(yīng)用場景,假設(shè)有一個程序描述了一個計算器。一個計算器有乘,除,加,減,根號?,F(xiàn)在我需要計算一個數(shù)字,先除,再乘,再除。那么我們就需要寫入一個關(guān)于除法的代碼,寫一個乘法的代碼,然后再寫一個除法的代碼。你看我們寫了兩次除法的代碼。這樣就太不方便了。

1.定義

所以在這是Java就引入了一個概念,方法,將一個代碼用方法裝起來,等需要用的時候就將,方法名放入帶到要使用的代碼中,通過這個方法名調(diào)用這個代碼。

修飾符 返回值類型 方法名稱([參數(shù)類型 形參 …]){
方法體代碼;
[return 返回值];
}

2.模塊化

public static int add(int x, int y) {
System.out.println("調(diào)用方法中 x = " + x + " y = " + y);
return x + y;
}
public static void main(String[] args) {
int a = 10;
int b = 20;
System.out.println("第一次調(diào)用方法之前");
int ret = add(a, b);
System.out.println("第一次調(diào)用方法之后");
System.out.println("ret = " + ret);
System.out.println("第二次調(diào)用方法之前");
ret = add(30, 50);
System.out.println("第二次調(diào)用方法之后");
System.out.println("ret = " + ret);
}

Java(三)邏輯控制(if....else,循環(huán)語句)與方法,java,java,開發(fā)語言

1.實參和形參的關(guān)系

看見括號中的參數(shù)嗎?這個是參數(shù),而參數(shù)分為形參和實參。

形參:就相當(dāng)于add函數(shù)中的自變量x,用來接收add函數(shù)在調(diào)用時傳遞的值的。形參的名字可以隨意取,對方法都沒有任何影響,形參只是方法在定義時需要借助的一個變量,用來保存方法在調(diào)用時傳遞過來的值。
實參:通過實際參數(shù)可以更改變量的值的參數(shù)。

這里就不得不說一個東西。數(shù)據(jù)在內(nèi)存中如何存儲?
真實的存儲中,存儲一個數(shù)據(jù)會將一個唯一的地址與一個數(shù)據(jù)進(jìn)行映射。形參就是將數(shù)據(jù)扔給add方法。而實參就是通過地址映射,來進(jìn)行修改數(shù)據(jù)。此時add中對a進(jìn)行改動,那么地址與之對應(yīng)的數(shù)據(jù)就會改變
Java(三)邏輯控制(if....else,循環(huán)語句)與方法,java,java,開發(fā)語言

public static int getSum(int n){ // n是形參
return n / 2;
}
getSum(10); // 10是實參,在方法調(diào)用時,形參n用來保存10
getSum(100); // 100是實參,在方法調(diào)用時,形參n用來保存100

3.重載(重要后邊有大用)

在Java中,如果多個方法的名字相同,參數(shù)列表不同,則稱該幾種方法被重載了。

為什么這樣呢?我要去買菜,一個豬肉20塊一斤,一斤白菜3.6塊。那么問題來了。我要買一斤豬肉,3斤白菜。我要計算我要花多少錢。那么我就需要定義一個addMet(),addVegetable()然后總和??墒嵌际羌臃?,為什么不定義一個add()只要中間的代碼不同不就行了。

public class TestMethod {
public static void main(String[] args) {
add(1, 2); // 調(diào)用add(int, int)
add(1.5, 2.5); // 調(diào)用add(double, double)
add(1.5, 2.5, 3.5); // 調(diào)用add(double, double, double)
}
public static int add(int x, int y) {
return x + y;

注意:

  1. 方法名必須相同
  2. 參數(shù)列表必須不同(參數(shù)的個數(shù)不同、參數(shù)的類型不同、類型的次序必須不同)
  3. 與返回值類型是否相同無關(guān)

4.重寫(重要后邊有大用)

5.遞歸(重要,一種思維方式)

這種思想在數(shù)學(xué)和編程中非常有用,因為有些時候,我們遇到的問題直接并不好解決,但是發(fā)現(xiàn)將原問題拆分成其子問題之后,子問題與原問題有相同的解法,等子問題解決之后,原問題就迎刃而解了。

//計算階乘
public static void main(String[] args) {
int n = 5;
int ret = factor(n);
System.out.println("ret = " + ret);
}
public static int factor(int n) {
if (n == 1) {
return 1;
}
return n * factor(n - 1); // factor 調(diào)用函數(shù)自身
}

具體實現(xiàn)過程,紅色為調(diào)用,綠色為返回
Java(三)邏輯控制(if....else,循環(huán)語句)與方法,java,java,開發(fā)語言
注意:文章來源地址http://www.zghlxwxcb.cn/news/detail-702295.html

  1. 將原問題劃分成其子問題,注意:子問題必須要與原問題的解法相同
  2. 遞歸出口

方法小總結(jié)

  1. 修飾符(權(quán)限修飾符):public(公開)
  2. 返回值類型:如果方法有返回值,返回值類型必須要與返回的實體類型一致,如果沒有返回值,必須寫成void
  3. 方法名字:采用小駝峰命名
  4. 參數(shù)列表:如果方法沒有參數(shù),()中什么都不寫,如果有參數(shù),需指定參數(shù)類型,多個參數(shù)之間使用逗號隔開
  5. 方法體:方法內(nèi)部要執(zhí)行的語句
  6. 在java當(dāng)中,方法必須寫在類當(dāng)中
  7. 在java當(dāng)中,方法不能嵌套定義
  8. 在java當(dāng)中,沒有方法聲明一說

到了這里,關(guān)于Java(三)邏輯控制(if....else,循環(huán)語句)與方法的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • 微信小程序開發(fā)雙重for循環(huán), wx: if else 語法

    ( 每天加班到10點, 周六周日全上班, 頭發(fā)掉光光嘿嘿嘿 ) for循環(huán) if else 語法

    2024年02月11日
    瀏覽(24)
  • Java-邏輯控制語句

    Java-邏輯控制語句

    在Java語法中,順序結(jié)構(gòu)是一種基本的程序控制結(jié)構(gòu),用于按照代碼的 編寫順序 依次執(zhí)行語句。 順序結(jié)構(gòu)沒有條件或循環(huán)的判斷,它的執(zhí)行是線性的, 從上到下依次執(zhí)行 每條語句。 代碼示例 : 效果圖 : 在Java語法中,if語句是一種條件控制語句,用于根據(jù)一個布爾表達(dá)式

    2024年02月05日
    瀏覽(27)
  • C++ 條件與 If 語句:掌握邏輯判斷與流程控制精髓

    您已經(jīng)知道 C++ 支持?jǐn)?shù)學(xué)中的常見邏輯條件: 小于: a b 小于或等于: a = b 大于: a b 大于或等于: a = b 等于: a == b 不等于: a != b 您可以使用這些條件來針對不同的決定執(zhí)行不同的操作。 C++ 具有以下條件語句: 使用 if 來指定一個代碼塊,如果指定的條件為 true,則執(zhí)行該

    2024年04月08日
    瀏覽(35)
  • Python條件控制和循環(huán)語句(if while for )

    同樣需要注意冒號和縮進(jìn)。另外,在 Python 中沒有 do..while 循環(huán)。 while+else whlie+break break跳出本層循環(huán)的含義 標(biāo)志位的使用 while+continue 死循環(huán): 程序中堅決不能出現(xiàn)死循環(huán) for循環(huán)不會出現(xiàn)死循環(huán),它的循環(huán)條件不是我們來控制,是人家內(nèi)部已經(jīng)控制好了 for循環(huán)和while循環(huán)都是

    2024年02月11日
    瀏覽(24)
  • 【java探索之旅】邏輯控制掌握 順序結(jié)構(gòu) 分支語句

    【java探索之旅】邏輯控制掌握 順序結(jié)構(gòu) 分支語句

    ?? 嶼小夏 : 個人主頁 ??個人專欄 : Java編程秘籍 ?? 莫道桑榆晚,為霞尚滿天! 邏輯控制是現(xiàn)代編程語言中的基本概念之一,它允許程序根據(jù)特定條件來決定執(zhí)行流程,使程序能夠根據(jù)不同情況做出相應(yīng)的處理。在編寫程序時,合理運用邏輯控制可以提高代碼的靈活性和

    2024年04月10日
    瀏覽(30)
  • JAVA輸入語句與循環(huán)控制結(jié)構(gòu)------JAVA入門基礎(chǔ)教程

    import java.util.Scanner; class LogicExer { ????static Scanner in = new Scanner(System.in); ????public static void main(String args[]) ????{ ????????int a; ????????int b; ????????a = b = 20; ????????boolean bo1 = (++a % 3 == 0) (a++ % 7 == 0); ????????System.out.println(a+\\\"+\\\"+bo1); ????????boolean b

    2024年02月01日
    瀏覽(33)
  • HarmonyOS/OpenHarmony應(yīng)用開發(fā)-ArkTS語言渲染控制if/else條件渲染

    ArkTS提供了渲染控制的能力。條件渲染可根據(jù)應(yīng)用的不同狀態(tài),使用if、else和else if渲染對應(yīng)狀態(tài)下的UI內(nèi)容。說明:從API version 9開始,該接口支持在ArkTS卡片中使用。 一、使用規(guī)則 支持if、else和else if語句。 if、else if后跟隨的條件語句可以使用狀態(tài)變量。 允許在容器組件內(nèi)使

    2024年02月12日
    瀏覽(32)
  • 【JAVASE】精密邏輯控制過程(分支和循環(huán)語句)

    【JAVASE】精密邏輯控制過程(分支和循環(huán)語句)

    ?作者簡介:大家好,我是橘橙黃又青,一個想要與大家共同進(jìn)步的男人???? ??個人主頁: 橘橙黃又青-CSDN博客 目標(biāo): 1. Java 中程序的邏輯控制語句 2. Java 中的輸入輸出方式 3. 完成猜數(shù)字游戲 廢話不多講,我們直接開始。 順序結(jié)構(gòu) 比較簡單 按照代碼書寫的順序一行一行

    2024年04月09日
    瀏覽(23)
  • 【Linux】Shell腳本之流程控制語句 if判斷、for循環(huán)、while循環(huán)、case循環(huán)判斷 + 實戰(zhàn)詳解[?建議收藏?。?]

    【Linux】Shell腳本之流程控制語句 if判斷、for循環(huán)、while循環(huán)、case循環(huán)判斷 + 實戰(zhàn)詳解[?建議收藏?。?]

    ????? 博主簡介 ????云計算領(lǐng)域優(yōu)質(zhì)創(chuàng)作者 ????華為云開發(fā)者社區(qū)專家博主 ????阿里云開發(fā)者社區(qū)專家博主 ?? 交流社區(qū): 運維交流社區(qū) 歡迎大家的加入! ?? 希望大家多多支持,我們一起進(jìn)步!?? ??如果文章對你有幫助的話,歡迎 點贊 ???? 評論 ?? 收藏

    2024年02月13日
    瀏覽(35)
  • 「PHP系列」If...Else語句/switch語句

    PHP 中的 if...else 語句是用于根據(jù)條件執(zhí)行不同代碼塊的強大工具。這種結(jié)構(gòu)允許你基于某個條件(通常是布爾表達(dá)式)的結(jié)果來決定執(zhí)行哪一部分代碼。下面是對 if...else 語句的詳細(xì)解釋以及一些示例。 示例 1:基本 if…else 結(jié)構(gòu) 在這個例子中,如果 $number 大于 5,將輸出 “

    2024年04月27日
    瀏覽(38)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包