一,for循环
for循环语法:
for(1循环体; 2循环条件; 3循环变化){
3循环执行的代码(循环体)
}
for循环执行顺序:
循环初始化-true-执行循环体-循环变化-循环结束条件
|
false 结束循环
例子1:
public class demo{//循环执行100次
public static void main(String[] agrs){
for(int i = 1; i<=100;i++){
System.out.println("代码执行100次" + i);
}
}
}
例子2:
public class demo{//输出1-100所有奇数
public static void main(String agrs){
for(int i = 1;i<101;i++){
if(i%2=0){
System.out.println(i);
}
}
}
}
二,while循环
初始化条件
while循环语法
while(1循环条件){
2循环体
循环变化
}
while循环条件执行顺序
循环判断条件-true-循环体-循环条件
|
false-结束循环
例子1:
public class demo{
public static void main(String[] agrs){
int i= 1;
while(i<=100){
System.out.println("我喜欢mysql");
System.out.println("i");
i++;
}
}
}
例子2:(需要好好捋捋)
public class demo{//求输入的数字是几位数
public static void main(String[] agrs){
int num = 1989;
int temp = num;
if(num == 0){
System.out.println("这个数字是1位数");
}else{
int count = 0;
while(num != 0){
num=num/10;
count++;
}
System.out.println(temp +"是" +count+"位数");
}
}
}
三,do...while循环
do while 循环语法
do{
循环体
循环变化
}while(循环条件):
do while循环的执行顺序
①执行循环体
②循环条件 如果(true)执行循环体,在执行循环变化,在进行循环条件判断,如果(false)结束循环
例子1:
public class demo03{
public static void main(String[] agrs){//打印100遍
int i=1;
do{
System.out.println("我喜欢编程");
i++;
}while(i<=100);
}
}
例子2:
import java.util.Scanner;
public class demo{
public static void main(String{} args){
Scanner sc = new Scanner(System.in);
String pingyu;
do{
System.out.println("学生正在敲代码中");
System.out.println("请输入评语");
pingyu = sc.next();
}while(!pingyu.equals("ok"));
}
}
四,break和continue关键字
①break 表示结束当前循环
②continue 表示结束本次循环,继续下一次循环
③注意:break,continue 后面不能写任何代码
1,break用法
import java.util.Scanner;
public class demo04{
public static void main(String agrs){
int sum = 0;
for(int i =1 ; i<=100 ; i++){
sum=sum+i;
if(sum>888){
System.out.println(i);
break;
//循环里面不能加东西
}
}
//出循环可以加东西
}
}
2,continue用法
import java.util.Scanner;
public class demo{
public static void main(String[] agrs){
int sum = 0;
for(int i=1;i<=100;i++){
if(i%3==0){
continue;
}
System.out.println(sum);
}
}
}
五,嵌套循环
需求1:打印一个5*5的一个矩形(用*号表示)
public class deno{
public static void main(String[] agrs){
/*
*****
*****
*****
*****
*****
*/
for(int i=1;i<=5;i++){//控制行数
for(int j=1;j<=5;j++){//控制列数
System.out.print("*");
}
System.out.println("");
}
}
}
需求2:打印一个直角三角形
public class demo{
public static void main(String[] agrs){
for(int i=1;i<=5;i++){//控制行数
for(int j=1;j<=i;j++){//控制列数
System.out.print("*");
}
System.out.println("");
}
}
}
需求3:打印一个倒的三角形
public class demo{
public static void main(String[] agrs){
for(int i = 1;i<=5;i++){
for(int j=1;j<=6-i;j++){
System.out.println("*");
}
System.out.println("");
}
}
}
需求4:打印三角形在右边
public class demo{
public static void main(String[] agrs){
//打印一个直角三角形在右面
for(int i = 1;i<=5;i++){
for(int j=1;j<=6-i;j++){
System.out.print(" ");
}
for (int j=1;j<=i;j++){
System.out.print("*");
}
System.out.println("");
}
}
}
需求5:打印一个倒的直角三角形在右面
public class demo{
public static void main(String[] agrs){
//打印一个倒的直角三角形在右面
for(int i = 1;i<=5;i++){
for (int j=1;j<=i;j++){
System.out.print(" ");
}
for(int j=1;j<=6-i;j++){
System.out.print("*");
}
System.out.println(" ");
}
}
}
需求6:打印一个等腰三角形
package com.qfedu;
public class demo3 {
public static void main(String[] args) {
for(int i = 1;i<=5;i++){
for(int j=1;j<=6-i;j++){
System.out.print("*");
}
for (int j=1;j<=2*i-1;j++){
System.out.println("*");
}
System.out.println(" ");
}
}
}
需求7:打印空心矩形5*5
package com.qfedu;
public class demo3 {
public static void main(String[] args) {
for(int i = 1;i<=5;i++){
for (int j=1;j<=5;j++){
if (i==1 || i==5 || j==1 || j==5){
System.out.print("*");
}else{//2,3,4就不打印
System.out.print(" ");
}
}
System.out.println("");
}
}
}
需求8:打印九九乘法口诀表
package com.qfedu;
public class demo3 {
public static void main(String[] args) {
for (int i=1;i<=9;i++){
for (int j=1;j<=i;j++){
System.out.print(j+"*"+i+"="+(j*i)+"\t");
}
System.out.println(" ");
}
}
}
需求9:鸡兔同笼 上35个头 下94足 问鸡兔共有多少只
package com.qfedu;
public class demo3 {
public static void main(String[] args) {
for (int i=0;i<=35;i++){
for (int j=0;j<=35;j++){
if ((i+j==35) && (2*i+4*j==94)){
System.out.println("鸡的数量"+i+"兔的数量"+j);
}
}
}
}
}