大数据之路day03--java循环的延申与练习(while 、do-while、for)

在今天,我突然被一个很尴尬的问题问到了,问题是这样的:说一下java循环的应用场景

我想很多人一下子听到这样的问题不知道怎么回答,大部分人会去想有什么循环格式,特点是什么。这些都是错误的,在往后的面试过程中,面试官可能会问类似这样的陷阱问题。

正确答案:java循环中包括while循环,do-while循环,for循环。其中while循环直接进行判断再进行数据操作的,进行重复的操作(简单的),而do-while循环是必须要有一次特定的操作之后再进入循环操作,for循环与while循环类似。

好了,话不多说,这一节,开始进行例子代码的实现:

 

例子1:99乘法表

提到循环,无论是学习什么语言,一定会遇到99乘法表这种题。

两次for循环控制输出,第一个for控制1-9,第二for控制每一行的个数。

 

 1 package day03;
 2 
 3 public class while02 {
 4 
 5     public static void main(String[] args) {
 6         //99乘法表
 7         int result;
 8         for(int y=1;y<10;y++) {
 9             for(int j=1;j<=y;j++) {
10                 result = y*j;
11                 System.out.print(j+"*"+y+"="+result+"\t");              
12             }
13             System.out.println();
14         }
15         
16         
17     }
18 
19 }

 

运行结果:

 

 

 例子2:do-while 实现摄氏温度与华氏温度之间的转换(这个例子里注意类型的强制转换)

 1 package day03;
 2 
 3 public class exer10 {
 4 
 5     public static void main(String[] args) {
 6         // do-while 华氏温度 = 摄氏温度 * 9 / 5.0 + 32
 7         float s = 0;
 8         float h = 0;
 9         int i = 1;
10         do {
11             h = (float) (s * 9 / 5.0 + 32);
12             System.out.println("摄氏温度" + s + "对应的华氏温度:" + h);
13             s = s + 20;
14             i++;
15         } while (i <= 10 && s <= 250);
16         
17     }
18 
19 }

运行结果:

 

 

 例子3:计算顾客比例(考虑到怎么实现统计录入的年龄,来计算最后的比例)

 1 package day03;
 2 
 3 import java.util.Scanner;
 4 
 5 public class exer13 {
 6 
 7     public static void main(String[] args) {
 8         // 学员操作,计算顾客比例
 9         float up = 0;
10         float down = 0;
11         Scanner sc = new Scanner(System.in);
12         for(int i = 1;i<=10;i++) {
13             System.out.print("请输入第" + i + "位顾客的年龄:");
14             int age=sc.nextInt();
15             if(age>30) {
16                 up += 1;
17             }else if(age<30) {
18                 down += 1;
19             }
20         }
21         System.out.println("30岁以下的比例是:" + down%10*10 + "%");
22         System.out.println("30岁以上的比例是:" + up%10*10 + "%");
23         
24         
25 
26     }
27 
28 }

运行结果:

 

 

例子4:验证用户登陆信息(利用for循环以及嵌套if来实现,主要考虑如何实现输入正确后的做法以及,输入都不正确的做法)

 1 package day03;
 2 
 3 import java.util.Scanner;
 4 
 5 public class exer15 {
 6 
 7     public static void main(String[] args) {
 8         // 学员操作--验证用户登陆信息
 9         Scanner sc = new Scanner(System.in);
10         
11         boolean flag = true;
12         String man_name = "xiaowang";
13         String man_password = "123456";
14         for(int i =1;i <= 3;i++) {
15             System.out.print("请输入用户名:");
16             String name = sc.next();
17             System.out.print("请输入密码:");
18             String password = sc.next();
19             if(name.equals(man_name) && password.equals(man_password)) {
20                 flag = true;
21                 System.out.println("欢迎登陆MyShopping系统!");
22                 break;
23             }else {
24                 System.out.println("输入错误!,您还有" + (3-i) + "次机会!");
25                 System.out.println();
26                 flag = false;
27             }
28         }
29         if(flag == false) {
30             System.out.println("对不起,您3次机会均输入错误!");
31         }
32         
33 
34     }
35 
36 }

运行结果:

1、输入都是错误的结果

 

 2、输入1次正确的结果:

 

 3、输入第二次的时候正确:

 

 当然,我的练习肯定不止这4个,我只是挑选出比较综合有代表性的来说,IT行业,一定要自己去敲,有一句话说的好:代码只是逻辑的实现过程,必须要常练习。加油!

posted @ 2019-11-06 19:44  Xiaohu_BigData  阅读(279)  评论(0编辑  收藏  举报