一、break
break关键字用于强行结束循环语句,不管是哪种循环语句,将break置于循环体部分并执行就会终止循环。break还常用于switch语句中,用法可以参考前一章的分支语句。
例如使用break关键字求出1+2+...+100的值:
public class Demo01 {
public static void main(String[] args) {
int s = 0;
int i = 1;
while(true){
s+=i++;
if(i>100)
break;
}
System.out.println(s); //print: 5050
}
}
分析:代码中while(true)为死循环,当i>100的时候,使用break强行结束循环语句,以达到求和的目的。
二、continue
continue关键字用在循环语句体中,用于终止某次循环过程,即跳过循环体中尚未执
行的语句,接着进行下一次是否执行循环的判定。
例如使用continue关键字求出1~100内偶数的和:
public class Demo02 {
public static void main(String[] args) {
int s = 0;
for(int i=0;i<=100;i++){
if(i%2==1)
continue;
s+=i;
}
System.out.println(s); //print: 2550
}
}
分析:当每次i的值取奇数的时候,执行一次continue就能结束此次的循环。
三、嵌套循环
1. 用while循环输出九九乘法表。
public class Demo03 {
public static void main(String[] args) {
int i = 1;
while(i<10){
int j = 1;
while(j<=i){
System.out.print(j+"*"+i+"="+(i*j)+"\t");
j++;
}
i++;
System.out.println();
}
}
}
2. 用do-while循环输出九九乘法表。
public class Demo04 {
public static void main(String[] args) {
int i = 1;
do{
int j = 1;
do{
System.out.print(j+"*"+i+"="+(i*j)+"\t");
j++;
}while(j<=i);
i++;
System.out.println();
}while(i<10);
}
}
3. 用for循环输出九九乘法表。
public class Demo05 {
public static void main(String[] args) {
for(int i=1;i<10;i++){
for(int j=1;j<=i;j++){
System.out.print(j+"*"+i+"="+i*j+"\t");
}
System.out.println();
}
}
}
上面三段代码的执行结果为:
4. 百钱买百鸡。
用一百文钱买一百只鸡,其中包括公鸡、母鸡和小鸡,公鸡:5文钱,母鸡:3文钱,小鸡:1文钱3只,列出买法。
public class Baiqianbaiji {
public static void main(String[] args) {
for(int i=1;i<=18;i++){
for(int j=1;j<=32;j++){
int k = 100-i-j;
if(i*5+j*3+k/3==100 && k%3==0){
System.out.println("公鸡:"+i+"只\t母鸡:"+j+"只\t小鸡:"+k+"只");
}
}
}
// print:
// 公鸡:4只 母鸡:18只 小鸡:78只
// 公鸡:8只 母鸡:11只 小鸡:81只
// 公鸡:12只 母鸡:4只 小鸡:84只
}
}
四、打印多边形
1. 矩形
public class Demo07 {
public static void main(String[] args) {
int width = 5;
int height = 6;
for(int i=0;i<height;i++){
for(int j=0;j<width;j++){
System.out.print("*");
}
System.out.println();
}
}
}
分析:代码中,width为宽度,height为高度,可以自己设置。
2. 等边三角形
public class Demo07 {
public static void main(String[] args) {
int size = 5;
for(int i=0;i<=size;i++){
for(int j=size;j>i;j--){
System.out.print(" ");
}
for(int j=0;j<(2*i+1);j++){
System.out.print("*");
}
System.out.println();
}
}
}
分析:其中size为等边三角形的大小,可自行设置。
3. 菱形
public class Demo08 {
public static void main(String[] args) {
int size = 5;
for(int i=0;i<(size+1);i++){
for(int j=size;j>i;j--){
System.out.print(" ");
}
for(int j=0;j<(2*i+1);j++){
System.out.print("*");
}
System.out.println();
}
for(int i=0;i<size;i++){
for(int j=0;j<=i;j++){
System.out.print(" ");
}
for(int j=(2*size-1);j>2*i;j--){
System.out.print("*");
}
System.out.println();
}
}
}
分析:其中size为菱形的大小,可自行设置。
网友评论