需求:請輸出一個4行5列的星星(*)圖案。 結果: ***** ***** ***** ***** public class XunHuanQianTao { public static void main(String[] args) { //外層控制行數 內層控制列數 for(int x=0;x ...
需求:請輸出一個4行5列的星星(*)圖案。
結果:
*****
*****
*****
*****
public class XunHuanQianTao { public static void main(String[] args) { //外層控制行數---內層控制列數 for(int x=0;x<4;x++){ for(int y=0;y<5;y++){ System.out.print("*"); } System.out.println(); } } }
需求:請輸出下列的形狀
*
**
***
****
*****
1 public class XunHuanQianTao { 2 public static void main(String[] args) { 3 //外層控制行數---內層控制列數 4 //其中發現輸出的星星--列數和行數是相同的 5 for(int x=0;x<5;x++){ 6 for(int y=0;y<=x;y++){ 7 System.out.print("*"); 8 } 9 System.out.println(); 10 } 11 } 12 }
需求:在控制台輸出九九乘法表。
註意:
'\x' x表示任意,這種做法叫轉移字元。
'\t' tab鍵的位置
'\r' 回車
'\n' 換行
public class XunHuanQianTao { public static void main(String[] args) { //外層控制行數---內層控制列數 //九九乘法表的行數和列數也是相同的 //其中將行列的兩個變數作為兩個乘數--進行相乘 for(int x=1;x<=9;x++){ for(int y=1;y<=x;y++){ System.out.print(y+"*"+x+"="+x*y+"\t"); } System.out.println(); } } }
控制跳轉語句---break;
/* 控制跳轉語句: break:中斷 continue:繼續 return:返回 break:中斷的意思 使用場景: A:switch語句中 B:迴圈語句中。 (迴圈語句中加入了if判斷的情況) 註意:離開上面的兩個場景,無意義。 如何使用呢? A:跳出單層迴圈 B:跳出多層迴圈 要想實現這個效果,就必須知道一個東西。帶標簽的語句。 格式: 標簽名: 語句 */ class BreakDemo { public static void main(String[] args) { //在 switch 或 loop 外部中斷 //break; //跳出單層迴圈 for(int x=0; x<10; x++) { if(x == 3) { break; } System.out.println("HelloWorld"); } System.out.println("over"); System.out.println("-------------"); wc:for(int x=0; x<3; x++) { nc:for(int y=0; y<4; y++) { if(y == 2) { //break nc; break wc; } System.out.print("*"); } System.out.println(); } } }
控制跳轉語句---continue
/* continue:繼續 使用場景: 迴圈中。離開此場景無意義。 測試,找到和break的區別: break:跳出單層迴圈 continue:跳出一次迴圈,進入下一次的執行 練習題: for(int x=1; x<=10; x++) { if(x%3==0) { //在此處填寫代碼 } System.out.println(“Java基礎班”); } 我想在控制台輸出2次:“Java基礎班“ break; 我想在控制台輸出7次:“Java基礎班“ continue; 我想在控制台輸出13次:“Java基礎班“ System.out.println(“Java基礎班”); */ class ContinueDemo { public static void main(String[] args) { for(int x=0; x<10; x++) { if(x == 3) { //break; continue; } System.out.println(x); } } }
控制語句---return
/* return:返回 其實它的作用不是結束迴圈的,而是結束方法的。 */ class ReturnDemo { public static void main(String[] args) { for(int x=0; x<10; x++) { if(x == 2) { System.out.println("退出"); //break; //continue; return; } System.out.println(x); } System.out.println("over"); } }
小芳存錢案例
分析:
A:小芳的媽媽每天給她2.5元錢
double dayMoney = 2.5;
B:她都會存起來
double daySum = 0;
C:從第一天開始存儲
int dayCount = 1;
D:經過多少天,小芳才可以存到100元錢。
double result = 100;
E:這一天是存錢的第5天或者5的倍數的話,她都會花去6元錢,
說明要判斷dayCount的值,如果對5整除就減去6元錢。
daySum -= 6;
由此還隱含了一個問題,就是如果不是5的倍數天的話,錢要累加
daySum += dayMoney;
F:因為不知道是多少天,所以我用死迴圈,一旦超過100元我就退出迴圈。
/* * 需求:小芳的媽媽每天給她2.5元錢,她都會存起來,但是, 每當這一天是存錢的第5天或者5的倍數的話,她都會花去6元錢, 請問,經過多少天,小芳才可以存到100元錢。 * */ public class XunHuanQianTao { public static void main(String[] args) { //首先定義一個統計天數的變數 int count =0; //定義一個初始的存錢數 double money =0; //問經過多少天--不知道具體的天數採用while迴圈 //確定其while迴圈的判斷條件===錢數大於等於100 while(money<100){ //進入迴圈首先天數加1 count++; //進行天數的判斷---花錢的當天仍然會得到2.5元 if(count%5==0){ money-=6; } //一天增加2.5 money+=2.5; System.out.println("第"+count+"的收入是"+money); } System.out.println("小芳存錢到100元需要"+count+"天"); } }