Java語(yǔ)法基礎(chǔ)之for語(yǔ)句練習(xí)
語(yǔ)句的嵌套應(yīng)用
累加求和,計(jì)數(shù)器
循環(huán)嵌套
一、語(yǔ)句的嵌套應(yīng)用
語(yǔ)句嵌套形式。其實(shí)就是語(yǔ)句中還有語(yǔ)句。形式多種多樣,沒(méi)有固定的格式和套路。
1、打印偶數(shù)
for(int x=1;x<=10;x++)
{ if(x%2==1)
continue;
System.out.prinln(“x=”+x);
}
二、累加求和,計(jì)數(shù)器
1、獲取1~10的和,并打印。
思路://1,定義變量用于存儲(chǔ)不斷變化的和。
int sum = 0;
//2,定義變量,記錄住不斷變化的被加的數(shù)。
int x = 1;
//3,定義循環(huán),重復(fù)加法的過(guò)程。
用while來(lái)體現(xiàn)
while(x<=10)
{
sum = sum + x;
x++;
}
System.out.println("sum="+sum);
循環(huán)注意:
一定要明確哪些語(yǔ)句需要參與循環(huán),哪些不需要
class ForTest2
{
public static void main(String[] args)
{
//用for來(lái)體現(xiàn)。
int sum = 0;
for(int x=0; x<=10; x++)
{
sum += x;
}
System.out.println("for sum = "+sum);
}
}
小例子的小小總結(jié):其實(shí)這就是累加思想。
原理:通過(guò)變量記錄住每次變化的結(jié)果。
通過(guò)循環(huán)的形式,進(jìn)行累加動(dòng)作。
2、1~100之間 7的倍數(shù)的個(gè)數(shù)。并打印。
思路:
1,先對(duì)1~100進(jìn)行循環(huán)(遍歷)通過(guò)循環(huán)的形式。
2,在遍歷的過(guò)程中,定義條件。只對(duì)7的倍數(shù)進(jìn)行操作。
3,因?yàn)?的倍數(shù)不確定,只要符合條件,就通過(guò)一個(gè)變量來(lái)記錄住這個(gè)變化的次數(shù)。
步驟:
1,定義循環(huán)語(yǔ)句,選擇for語(yǔ)句。
2,在循環(huán)中定義判斷。只要是7的倍數(shù)即可。使用if語(yǔ)句。條件:7的倍數(shù) x%7==0;
3,定義變量,該變量隨著7的倍數(shù)的出現(xiàn)而自增。
class ForTest3
{
public static void main(String[] args)
{
int count = 0;
for(int x=1; x<=100; x++)
{
if(x%7==0)
//System.out.println("x="+x);
count++;
}
System.out.println("count="+count);
}
}
小小示例的總結(jié):
這就是計(jì)數(shù)器思想。通過(guò)一個(gè)變量記錄住數(shù)據(jù)的狀態(tài)變化。也許通過(guò)循環(huán)完成。
三、循環(huán)嵌套。
1,打印一個(gè)長(zhǎng)方形。
class ForForDemo
{
public static void main(String[] args)
{
/*
****
****
****
*/
for(int x=0; x<3; x++)//
{
for(int y=0; y<4; y++)
{
System.out.print("*");
}
System.out.println();//只有一個(gè)功能就是換行。
}
System.out.println("-------------------");
}
}
****
****
****
對(duì)于打印長(zhǎng)方形總結(jié):外循環(huán)控制的行數(shù)。內(nèi)循環(huán)控制的是每一行的列數(shù)。也就是一行中元素的個(gè)數(shù)。
2,打印一個(gè)直角三角形,腳尖朝下。
class ForForDemo
{
public static void main(String[] args)
{
/*
*****
****
***
**
*
發(fā)現(xiàn)圖形有很多行,每一個(gè)行有很多列。
要使用嵌套循環(huán)。原理:形象說(shuō)法:大圈套小圈。
*/
//int z = 5;
for (int x=0; x<5 ;x++ )//x<5:因?yàn)橥庋h(huán)控制行數(shù)。一共5行。
{
for (int y=x; y<5 ;y++)
{
System.out.print("*");
}
System.out.println();
//z++;
}
}
}
通過(guò)該示例小小總結(jié):發(fā)現(xiàn)圖形有很多行,每一個(gè)行有很多列。
要使用嵌套循環(huán)。原理:形象說(shuō)法:大圈套小圈。
3,打印正三角、楊輝三角、九九乘法表
/*
*
**
***
****
*****
1
12
123
1234
12345
九九乘法表
1*1=1
1*2=2 2*2=4
1*3=3 2*3=6 3*3=9
*/
class ForForTest
{
public static void main(String[] args)
{
/*
*
**
***
****
*****
*/
for (int x=0; x<5 ;x++ )
{
for (int y=0 ; y<=x ; y++ )
{
System.out.print("*");
}
System.out.println();
}
System.out.println("----------------------");
/*
1
12
123
1234
12345
*/
for (int x=1; x<=5; x++)
{
for (int y=1; y<=x;y++ )
{
System.out.print(y);
}
System.out.println();
}
System.out.println("----------------------");
/*
九九乘法表
1*1=1
1*2=2 2*2=4
1*3=3 2*3=6 3*3=9
*/
for (int x=1; x<=9 ; x++)
{
for (int y=1; y<=x; y++)
{
System.out.print(y+"*"+x+"="+y*x+"\t");
}
System.out.println();
}
}
}
通過(guò)正三角、楊輝三角、九九乘法表得出一些不是規(guī)律的規(guī)律:
所謂不是規(guī)律的規(guī)律:
尖朝上,可以改變條件。讓條件隨著外循環(huán)變化。
尖朝下,可以初始化值,讓初始化隨著外循環(huán)變化。
4,打印菱形(◇)或稱(chēng)為金字塔
/*
----*
---* *
--* * *
-* * * *
* * * * *
* * * * *
-* * * *
--* * *
---* *
----*
*/
class ForForTest2
{
public static void main(String[] args)
{
for (int x=0; x<5 ;x++ )
{
for(int y=x+1; y<5 ; y++)
{
System.out.print(" ");
}
for(int z=0; z<=x ; z++)
{
System.out.print("* ");
}
System.out.println();
}
}
}
5、練習(xí):3000米長(zhǎng)的繩子,每天減一半。問(wèn)多少天這個(gè)繩子會(huì)小于5米?不考慮小數(shù)。
class ForTest4
{
public static void main(String[] args)
{
int day = 0;
for(int x=3000; x>=5; x/=2)
{
day++;
}
System.out.println("day="+day);
}
}
通過(guò)上述練習(xí),曉得了在遇到問(wèn)題時(shí),首先要明確問(wèn)題是什么,其次自己是否有思路,然后將思路轉(zhuǎn)換成java能識(shí)別的步驟,最后再通過(guò)java語(yǔ)言實(shí)現(xiàn)即可。
相關(guān)文章
SpringMVC中的Model對(duì)象用法說(shuō)明
這篇文章主要介紹了SpringMVC中的Model對(duì)象用法說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-06-06
SSH結(jié)合jquery實(shí)現(xiàn)三級(jí)聯(lián)動(dòng)效果
這篇文章主要為大家詳細(xì)介紹了SSH結(jié)合jquery實(shí)現(xiàn)三級(jí)聯(lián)動(dòng)效果,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-01-01
Eclipse+Java+Swing+Mysql實(shí)現(xiàn)工資管理系統(tǒng)
這篇文章主要介紹了Eclipse+Java+Swing+Mysql實(shí)現(xiàn)工資管理系統(tǒng),對(duì)正在工作或者學(xué)習(xí)的你有一定的參考價(jià)值,需要的朋友可以參考一下2022-01-01
通過(guò)IDEA快速定位和排除依賴(lài)沖突問(wèn)題
這篇文章主要介紹了通過(guò)IDEA快速定位和排除依賴(lài)沖突問(wèn)題,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-06-06
mybatis插入數(shù)據(jù)后返回自增主鍵ID的兩種實(shí)現(xiàn)方式
這篇文章主要介紹了mybatis插入數(shù)據(jù)后返回自增主鍵ID的兩種實(shí)現(xiàn)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-05-05
SpringBoot項(xiàng)目中@RestControllerAdvice全局異常失效問(wèn)題的解決
@RestController注解是一個(gè)用于定義RESTful Web服務(wù)的控制器的特殊注解,它是@Controller和@ResponseBody注解的結(jié)合體,意味著你不需要在每個(gè)處理請(qǐng)求的方法上都添加@ResponseBody,本文給大家介紹了解決SpringBoot項(xiàng)目中@RestControllerAdvice全局異常失效問(wèn)題2024-11-11
SSM框架通過(guò)mybatis-generator自動(dòng)生成代碼(推薦)
這篇文章主要介紹了SSM框架通過(guò)mybatis-generator自動(dòng)生成代碼,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2017-11-11
mybatis單元測(cè)試過(guò)程(無(wú)需啟動(dòng)容器)
在MyBatis中,單元測(cè)試無(wú)需啟動(dòng)容器即可進(jìn)行,主要涉及Configuration類(lèi)、Executor接口及其實(shí)現(xiàn)類(lèi),以及XMLMapperBuilder的作用,Configuration類(lèi)是配置的承載者,負(fù)責(zé)初始化并解析配置文件,Executor接口及其實(shí)現(xiàn)類(lèi)2024-09-09

