JAVA第一次作业

(一)学习总结

1.本次作业中用的最多的是Scanner类的

例如

import java.util.Scanner;
public class TextScanner{
	public static void main(String [] args){
	         //创建Scanner对象 接受从控制台输入
	Scanner input = new Scanner(System.in);
	System.out.println("请输入名字:");
	                     //接受String型
	String name = input.next();
	System.out.println("请输入学号");
	                       //接受int型
	int id = input.nextInt(); //什么类型next后面就接什么 注意大小写
                         	//输出结果
	System.out.println("名字为:"+name+"	学号为:"+id);
      }
 } 

2.Random类和Math类的random()方法都能产生随机数,这两种方式有什么区别,各有什么特点呢?

Random类的随机方法是设定随机种子的,(如:newRandom().nextInt(10)),这里的10就是随机种子,根据随机数的原理,相同随机种子在相同的随机次数中产生的随机数是一样的。
如果看Math的random方法的实现代码的话,就会发现,该方法就是调用的Random类的nextDouble()方法。
因为Math类的random方法使用较方便,不需要导包、创建对象,所以许多人习惯于使用该方法。

3.java与c、c++都有好多相似的地方,只有每次认认真真的学习才能从发现真正的区别,才能更好的学好。

(二)实验总结

1.猜数游戏

程序设计思路:利用math.random()函数调用,生成100以内的随机数。利用循环来实现5次猜数游戏的完成。每循环一次,time++,最终显示猜对所用的次数。

实验问题分析:

问题1:输入5次以后循环并没有结束

解决方案:修改if的比较

问题2:所用次数并没有显示对

解决方案:用减法+(5-time)

2.万年历

程序设计思路:

1.输出第一天之前的空格�每个输出项8个空格。

2.依次输出每一天�每一个输出项占8个字符宽度,即可完整的输出该月的日历。

3.如果年份小于1900年则程序不予判断。

实验问题分析:

问题1:计算当前日期到1900年1月1日的天数

解决方案:

利用switch语句来求天数

int beforeDays = 0;
		 for (int i = 1; i <= month; i++) {
			 switch (i) {
			 		case 1:  days=31;
			 		case 3:  days=31;
			 		case 5:  days=31;
			 		case 7:  days=31;
			 		case 8:  days=31;
			 		case 10:  days=31;
			 		case 12:  days=31;
			 		break;
			 		case 2:
			 		if (isLeap){
			 			days=29;
			 		}
			 		else{
			 			days=28;
			 		}
			 		break;
			 		default: days=30;
			 		break;
			 }
			 if(i<month){
				 beforeDays = beforeDays + days;
			 }
		 }
		 totalDays =totalDays + beforeDays;

(三)代码托管

HTTPS地址:https://git.oschina.net/hebau_cs15/zuoye.git

(四)学习进度条

-------- 代码行数(新增/累积) 学习时间(新增/累积) 本周学习内容
目标 5000行 300小时
第2-4周 250/300 15/15 java的基本语法,random函数
第5周
第6周
原文地址:https://www.cnblogs.com/hukauihui/p/6573040.html