本帖最后由 小鲁哥哥 于 2017-8-25 10:56 编辑
【济南中心】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] 纯文本查看 复制代码 Scanner sc = new Scanner(System.in);
System.out.println("请输入月份(1-12):");
int yuefen = 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("秋季");
break;
default:
System.out.println("输入信息有误");
break;
}
做完上面的代码,技术辅导又给大家提出了新的需求:我要让程序不断的执行, 我不断的输入月份,程序给出季节,直到我输入错误程序才停止。
然后又给大家10分钟的时间,自己写一下。
这里每个同学的思路也是不一样的,有的用的for循环,有的用的while循环。这样能开阔思路,主动思考比被动吸收好很多。
10分钟过后,技术辅导给大家讲解了一下。说了一种开关思想。用一个变量来控制程序循环的执行。
[Java] 纯文本查看 复制代码 public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
boolean b = true;//开关思想
while(b){
System.out.println("请输入月份(1-12):");
int yuefen = 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("秋季");
break;
default:
System.out.println("输入信息有误");
b = false;
break;
}
}
}
接下来按照这种方式讲解了几道练习题。把重点知识串联了一下。
这里我把题目提供给大家,希望想要巩固复习一下的同学可以试着自己思考做一下,然后对比答案,看看自己哪里还欠缺。
1.键盘录入班级人数
2.根据录入的班级人数创建数组
3.利用随机数产生0-100的成绩给数组元素赋值(包含0和100)
4.要求:
(1)打印该班级的不及格人数
(2)打印该班级的平均分
(3)演示格式如下:
请输入班级人数:
键盘录入:100
控制台输出:
不及格人数:19
班级平均分:87
[Java] 纯文本查看 复制代码 public static void main(String[] args) {
//1-0-0 键盘录入成绩
Scanner sc = new Scanner(System.in);
System.out.println("请输入班级人数:");
int num_class = sc.nextInt();
int[] arr = new int[num_class];
Random r = new Random();
//定义个计数器
int count = 0;
int sum = 0;
//遍历数组,用随机数给数组元素赋值
for (int i = 0; i < arr.length; i++) {
int chengji = r.nextInt(101);//包含头不包含尾
arr = chengji;
System.out.print(chengji+" ");
if(chengji<60){
count ++;
}
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] 纯文本查看 复制代码 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;
}
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] 纯文本查看 复制代码 public static void main(String[] args) {
Computer c = new Computer();
// c.brand = "ThinkPad";
// c.price = 7399;
c.setBrand("ThinkPad");
c.setPrice(7399);
c.coding();
Computer c1 = new Computer("acer",5399);//如果你再类里创建了有参构造,系统就不会再提供空参构造了。
c1.playGame();
}
这是这次基础班day07补课的部分内容,另外还有方法的重载,数组等知识点的强调。同学们表示技术辅导的补课对于自己加深理解很有帮助。这也是黑马对于每一个学员不抛弃不放弃的体现!
念念不忘,必有回响!
|