Java4Android自学记录(7-2):练习课

今天日子很特殊啊,据说是千年一遇,20200202,没什么好纪念的,就发一篇博客纪念一下吧!哈哈

1 目录及资源索引

  Java4Android自学过程目录及资源索引

2 练习1

2.1 实际练习

  题目:将学生的分数按照标准分为优、良、中、差四个级别。按照老师讲解的,分步骤来操作:

  1. 创建一个名为 Test01 的类;
  2. 在 Test01 类中加入主函数;
  3. 在主函数中定义一个整形变量,用于表示学生的分数;
  4. 使用 if … else … 结构对分数进行分级。

  我们按照要求,先尝试写一下代码如下:

public class Test01
{
	public static void main(String args[])
	{
		int score = 90;

		if( (score >= 90) && (score <= 100) )
		{
			System.out.println("成绩为优");
		}
		else if( (score >= 80) && (score < 90) )
		{
			System.out.println("成绩为良");
		}
		else if( (score >= 60) && (score < 80) )
		{
			System.out.println("成绩为中");
		}
		else if( (score >= 0) && (score < 60) )
		{
			System.out.println("成绩为差");
		}
		else
		{
			System.out.println("成绩非法");
		}						
	}
}

  程序运行结果如下:
在这里插入图片描述

2.2 练习总结

  针对上述代码,做出如下几点分析,可以一步一步来看:

  1. 分数要求定义为一个整形变量,需要想到整形:可正,可负,可0;但是分数只有:正数和0。
  2. 有了上述基础,接下来可以想一下取值范围,分数取值范围为:0 - 100;整形取值范围:-231 ~ 231 - 1。
  3. 接下来就是对分数进行对应的优良中差等级划分,90 - 100是优;80 - 89是良;60 - 79是中;0 - 59是差。
  4. 在划分的时候,不要忘了100分,0分这两个特殊的。然后在这个分数等级外的任何分数(大于100,小于0),都会进到 else,打印“成绩非法”。
  5. 最后总结下来就是,需要考虑到各种不同的情况,比较好点的办法就是把取值范围列出来,把不同等级的分数段取值范围列出来,一一对应,这样到代码中就不会出错。

3 练习2

3.1 实际练习

  题目:猜拳游戏。按照老师讲解的,分步骤来操作:

  1. 创建一个名为 Test02 的类;
  2. 在 Test02 类中加入主函数;
  3. 在主函数中定义两个 char 类型的变量,分别代表两个玩家的出拳;
  4. 使用 if … else … 分支结构对结果进行判断。

  同理,按照上述步骤要求,先写一下代码如下:

public class Test02
{
	public static void main(String args[])
	{
		// a:石头 b:剪刀 c:布
		char play1 = 'a';	// 玩家1
		char play2 = 'b';	// 玩家2

		if( ('a' == play1) && ('a' == play2) )
		{
			System.out.println("平局");			// 石头 石头
		}
		else if( ('a' == play1) && ('b' == play2) )
		{
			System.out.println("Player1 赢");	// 石头 剪刀
		}
		else if( ('a' == play1) && ('c' == play2) )
		{
			System.out.println("Player2 赢");	// 石头 布
		}
		else if( ('b' == play1) && ('a' == play2) )
		{
			System.out.println("Player2 赢");	// 剪刀 石头
		}
		else if( ('b' == play1) && ('b' == play2) )
		{
			System.out.println("平局");			// 剪刀 剪刀
		}
		else if( ('b' == play1) && ('c' == play2) )
		{
			System.out.println("Player1 赢");	// 剪刀 布
		}
		else if( ('c' == play1) && ('a' == play2) )
		{
			System.out.println("Player1 赢");	// 布 石头
		}
		else if( ('c' == play1) && ('b' == play2) )
		{
			System.out.println("Player2 赢");	// 布 剪刀
		}
		else if( ('c' == play1) && ('c' == play2) )
		{
			System.out.println("平局");			// 布 布
		}
	}
}

  程序运行结果如下:
在这里插入图片描述

3.2 练习总结

  针对上述代码,简要做出如下几点分析或思路,一步一步来看:

  1. 猜拳游戏,无非就是石头、剪刀、布这三种,我们可以找三个字母分别对应这三种形式,此代码中,我使用 a 代表石头,b 代表剪刀,c 代表布。注意写清楚注释,很重要,不然你写的多了,谁知道 a 代表啥?自己都乱了。
  2. 定义两个字符型变量,也就是 char 型变量,这样才能存储一个字母。
  3. 在打印语句后面,可以类似代码中示例,写好注释,表明此次是哪两个类型的判断结果,可按顺序来,我默认的是:玩家1 玩家2 :石头 石头;类似这种。这样很一目了然的就看出来了是什么判断条件。
  4. 猜拳游戏,有三种类型,这三种类型组合在一块,有9种组合,怎么写能使组合更好理解呢?我自己采用的方法是:玩家1先出石头,对应玩家2三种情况;然后玩家1出剪刀,对应玩家2三种情况;接着玩家1出布,对应玩家2三种情况。这样先固定一个,把另一个按顺序依次都完成,结构也很清晰,也不会乱,不会丢,不会忘了哪一个。

4 总结

  1. 写代码一定要有注释,一定要有注释,一定要有注释!重要的事情说三遍。我看这个教程,可能年代久远,发现这个老师特别不爱写注释。下图是老师写的代码,没有注释还没有括号,我们在写的时候,该加括号的地方加括号,该注释的地方写清楚注释。在这里插入图片描述
  2. 有一点老师教的比较好,写之前,先理清一下框架,老师说面向对象的编程语言,就是和现实中的事情差不多,老师举的有的例子还是比较好的。
  3. 再提一下,我目前装的标准版的 Java 编译环境,当代码中有中文字符,在编译的时候,必须加上使用的字符集是哪个,不然会使用错误的字符集,并报错。
  4. 最近肺炎情况越来越严重了,保护好自己!
  5. 今天日子也不错,20200202,希望2020一切都会好起来的!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

FightingBoom

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值