java第一次作业
(一)学习总结
1.在java中通过Scanner类完成控制台的输入,查阅JDK帮助文档,Scanner类实现基本数据输入的方法是什么?
- 首先程序导入java.util.scanner,在构造Scanner对象,并与System.in关联,最后在调用Scanner的各种方法完成输入。
几种基本方法:
nextInt() :读取整型数据
nextDouble() :读取双精度数据
next()—读取输入的下一个单词(空格作为分隔符)
nextLine():读取输入的 下一行内容
实例:输入一个数字并在输出
import java.util.Scanner;
public class shuzi{
public static void main(String[] args) {
Scanner input=new Scanner(System.in);
System.out.print("请输入数字: ");
int x=input.nextInt();
System.out.println("输入的数字为:"+x);
}
}
2.Random类和Math类的random()方法都能产生随机数,这两种方式有什么区别,各有什么特点呢?
- Random类的random()方法:
创建一个新的随机数生成器。此构造方法将随机数生成器的种子设置为某个值,该值与此构造方法的所有其他调用所用的值完全不同。 - Math类的random()方法:
返回带正号的 double 值,该值大于等于 0.0 且小于 1.0。返回值是一个伪随机选择的数,在该范围内(近似)均匀分布。
都是用于产生随机数的但是random类较常用。如:
public double nextDouble() 生成一个随机的double值,数值介于[0,1.0)之间。
public int nextInt() 生成一个随机的int值,该值介于int的区间(-231~231-1)。
public int nextInt(int n) 生成一个随机的int值,该值介于[0,n)之间,包含0不包含n。
3.本次学习要点中其他需要总结的内容:
- java和C语言有许多相似的地方,但是语法,细节内容也是完全不相同的,通过学习了解了java的编辑,运行模式。
也要注意字符类型,不同类型之间的转换。整体来说,初接触java,很多地方不熟悉,不了解,还要下功夫。
(二)实验总结
1.猜数游戏
- 程序设计思路:
一个while条件语句循环,判断10次,有猜对的就break退出,最后在输出随机的商品价格。- 实验问题分析:
问题1:循环次数不够10次
原因:循环次数控制变量i的位置提到循环内。
解决方案:i初始值为0
- 实验问题分析:
2.万年历
- 程序设计思路:
1.先判断是否为闰年,通过判断出闰年还是平年来判断一年的天数,之后在通过闰平年来判断2月的天数为28天还是29天。
2.已知1900年1月1日是星期一,输入的日期然后减去初始日期,算出总天数,然后再用天数除以7的公式算出今天是星期几。- 实验问题分析:
问题1:有些日期计算出结果错误
出现原因:闰年判断失误,忽略了整百年一遇的闰年
解决方案:特殊根据平年闰年算出2月多少天,判断后在计算总天数。
问题2: 计算结果,程序运行重复错误
出现原因:代码【】过多,重复错误。
解决方案:细心排查,找好每一个小程序。
- 实验问题分析:
(三)代码托管
- 码云commit历史截图
![]()
码云项目连接
https://git.oschina.net/Android66/java1
(四)学习进度条
| 代码行数(新增/累积) | 学习时间(新增/累积) | 本周学习内容 | |
|---|---|---|---|
| 目标 | 5000行 | 300小时 | |
| 第2-4周 | 280/280 | 20/20 | java基本语法 |
| 第5周 | |||
| 第6周 |


浙公网安备 33010602011771号