黑马程序员JavaEE基础班自习补课day07
随着时间一天天过去,基础班已经进行到了day07,这天的自习课,我们技术辅导给基础班的部分学员进行了补课,补课是采用自愿原则,并不点名,但是大家都很热情,有一半的同学参加了补课。
补课内容全部是已经学过的知识点,以案例为主,强调重点,强调练习。
那接下来就一起看看,这次补课的内容吧~
首先一上来呢,技术辅导给大家解答疑惑,面向对象在后面的就业班还会再深入学习4天,所以不用担心理解不了。第一天接触是有一点难理解的,这很正常。
那第一道题呢,就是回顾之前的一个经典练习题。题目是这样的:
设计一个程序,键盘输入月份,控制条输出季节.3,4,5春季/6,7,8夏季/9,10,11秋季
/12,1,2冬季。
给大家10分钟的时间,大家有的用的if else 有的用的switch case,不过其中有部分同学也暴露出了很多问题。比如键盘录入的代码忘了啊,switch忘了怎么拼啊,这些提醒我们,学过去的东西,当时掌握了,但是还要不断的复习,巩固,根据艾宾浩斯遗忘曲线,我们要尽快的多频次的复习。
当然还给大家介绍了一些编程技巧,就是熟练使用我们的编辑工具,提高我们编程效率。
比如你写了个swi就忘了这个关键词后面是啥了,没关系,只要使用alt + /提示快捷键,马上就出来了提示。如图:
然后按下回车,switch case代码框架就有了!
然后再添加合适的变量名和值,多复制几个case这部分代码很快就写完了。是不是快了很多?
[Java] 纯文本查看复制代码
?
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22 Scanner sc = new Scanner(System.in); System.out.println("请输入月份(1-12):");
intyuefen = sc.nextInt();
switch (yuefen) {
case 1:
case 2:
case 12:
System.out.println("冬季"); break;
case 3:
case 4:
case 5:
System.out.println("春季"); break;
case 6:
case 7:
case 8:
System.out.println("夏季"); break;
case 9:
case 10:
case 11:
23
24
25
26
27
28
29 System.out.println("秋季");
break;
default:
System.out.println("输入信息有误");
break;
}
做完上面的代码,技术辅导又给大家提出了新的需求:我要让程序不断的执行,我
不断的输入月份,程序给出季节,直到我输入错误程序才停止。
然后又给大家10分钟的时间,自己写一下。
这里每个同学的思路也是不一样的,有的用的for循环,有的用的while循环。这样能开阔思路,主动思考比被动吸收好很多。
10分钟过后,技术辅导给大家讲解了一下。说了一种开关思想。用一个变量来控制程序循环的执行。
[Java] 纯文本查看复制代码
?
01
02
03
04 public static void main(String[] args) {
Scanner sc = new Scanner(System.in); boolean b = true;//开关思想
while(b){
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26 System.out.println("请输入月份(1-12):"); intyuefen = sc.nextInt();
switch (yuefen) {
case 1:
case 2:
case 12:
System.out.println("冬季");
break;
case 3:
case 4:
case 5:
System.out.println("春季");
break;
case 6:
case 7:
case 8:
System.out.println("夏季");
break;
case 9:
case 10:
case 11:
System.out.println("秋季");
28
29
30
31
32
33
34
35
default:
System.out.println("输入信息有误");
b = false;
break;
}
}
}
接下来按照这种方式讲解了几道练习题。把重点知识串联了一下。
这里我把题目提供给大家,希望想要巩固复习一下的同学可以试着自己思考做一下,然
后对比答案,看看自己哪里还欠缺。
1.键盘录入班级人数
2.根据录入的班级人数创建数组
3.利用随机数产生0-100的成绩给数组元素赋值(包含0和100)
4.要求:
(1)打印该班级的不及格人数
(2)打印该班级的平均分
(3)演示格式如下:
请输入班级人数:
键盘录入:100
不及格人数:19
班级平均分:87 [Java] 纯文本查看复制代码
?
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17 public static void main(String[] args) {
//1-0-0 键盘录入成绩
Scanner sc = new Scanner(System.in);
System.out.println("请输入班级人数:");
intnum_class = sc.nextInt();
int[] arr = new int[num_class];
Random r = new Random();
//定义个计数器
int count = 0;
int sum = 0;
//遍历数组,用随机数给数组元素赋值
for (inti = 0; i intchengji = r.nextInt(101);//包含头不包含尾 arr = chengji; System.out.print(chengji+" "); if(chengji<60){ count ++; 18 19 20 21 22 23 24 } sum = sum + chengji ; } System.out.println(); System.out.println("不及格的人数是:"+count); System.out.println("平均分是:"+sum/num_class); } 定义“电脑类”Computer,包含以下成员: 成员属性: 品牌brand( String类型) 价格price(double类型) 成员方法: 编码coding, 调用方法打印***电脑正在使用Java语言编程 玩游戏,playGame,调用方法打印***电脑正在玩王者荣耀 定义测试类Test,定义main方法,main方法内完成: a.创建一个电脑对象,设置品牌为ThinkPad,价格为7399,调用方法coding b.创建一个电脑对象,设置品牌为acer,价格为5399,调用方法playGame 演示格式如下: 7399.0的ThinkPad电脑正在使用Java语言编程 5399.0的acer 电脑正在玩王者荣耀 [Java] 纯文本查看 复制代码 ? 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 public class Computer { private String brand; private double price;//alt + shift + s public Computer() { } public Computer(String brand, double price) { super(); this.brand = brand; this.price = price; } public String getBrand() { return brand; } 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 public void setBrand(String brand) { this.brand = brand; } public double getPrice() { return price; } public void setPrice(double price) { this.price = price; } public void coding(){ System.out.println(this.price+"元的"+this.brand + "电脑正在使用Java 语言编程"); } public void playGame(){ System.out.println(this.price+"元的"+this.brand + "电脑正在玩王者荣耀"); } } [Java] 纯文本查看 复制代码 ? 01 02 03 public static void main(String[] args) { Computer c = new Computer(); // c.brand = "ThinkPad"; 04 05 06 07 08 09 10 11 // c.price = 7399; c.setBrand("ThinkPad"); c.setPrice(7399); c.coding(); Computer c1 = new Computer("acer",5399);//如果你再类里创建了有参构造,系统就不会再提参构造了。 c1.playGame(); } 这是这次基础班day07补课的部分内容,另外还有方法的重载,数组等知识点的强调。同 学们表示技术辅导的补课对于自己加深理解很有帮助。这也是黑马对于每一个学员不抛弃不 放弃的体现! 念念不忘,必有回响!