大家好,又是新的一期
新的一期Educoder–Java面向对象(第七章) - Java中的异常
快来!教你一个解除部分网课平台关于复制粘贴限制的方法!!
第一题
请仔细阅读右侧代码,根据方法内的提示,在Begin - End区域内进行代码补充,具体任务如下:
Demo类和Person类已经写好,在测试类中创建Demo类对象d1,传入输入值num1, d1调用toString方法并打印输出该值;
创建Demo类对象d2,同样传入输入值num1,打印判断d1和d2是否相等(实际是比较地址);
创建Person类对象p,传入输入值num2,打印判断d1和p是否相等(实际是比较地址);
// 在测试类中创建Demo类对象d1,传入输入值num1, d1调用toString方法并打印输出该值
// 创建Demo类对象d2,同样传入输入值num1,打印判断d1和d2是否相等(实际是比较地址)
/********* Begin *********/
Demo d1=new Demo(num1);
System.out.println(d1.toString());
Demo d2=new Demo(num1);
System.out.println(d1.equals(d2));
/********* End *********/
// 创建Person类对象p,传入输入值num2,打印判断d1和p是否相等(实际是比较地址)
/********* Begin *********/
Person p=new Person(num2);
System.out.println(d1.equals(p));
/********* End *********/
第二题
请仔细阅读右侧代码,根据方法内的提示,在Begin - End区域内进行代码补充,具体任务如下:
编写测试类,输入int型值aa传递给Integer类对象a,String型值bb传递给Integer类对象b,输入int型值c,aa、bb、c对应的数值相等;
输入String型值str11传递给String类对象str1,输入String型值str22传递给String类对象str2,str1和str2对应的内容相同;
打印输出a == b、a == c、b == c、a.equals(b);
打印输出str1 == str2、str1.equals(str2)。
/********* Begin *********/
Integer a =new Integer(aa);
Integer b =Integer.parseInt(bb);
String str1=new String(str11);
String str2=new String(str22);
System.out.println(a==b);
System.out.println(a==c);
System.out.println(b==c);
System.out.println(a.equals(b));
System.out.println(str1==str2);
System.out.println(str1.equals(str2));
/********* End *********/
第三题
请仔细阅读右侧代码,根据方法内的提示,在Begin - End区域内进行代码补充,具体任务如下:
编写测试类,输入一个标准的网址,输出其域名的主体;
将该主体转换为大写,打印输出;
具体输出要求请看测试说明。
/********* Begin *********/
String str1= str.substring( 12,str.lastIndexOf('.'));
if(str1.indexOf('.')>0){
str1=str1.substring( 0,str1.lastIndexOf('.'));
}
System.out.println(str1);
str1=str1.toUpperCase();
System.out.println(str1);
/********* End *********/
第四题
请仔细阅读右侧代码,根据方法内的提示,在Begin - End区域内进行代码补充,具体任务如下:
设计一个密码的自动生成器:密码由大写字母/小写字母/数字组成,生成六位随机密码。
分别以1、2、3作为种子数创建Random对象,生成六位随机密码进行测试。
具体输出要求请看测试说明。
/********* Begin *********/
for (int i = 0; i < 26; i++) {
pardStore[i] = (char) ('A' + i);
}
for (int i = 26; i < 52; i++) {
pardStore[i] = (char) ('a' + (i - 26));
}
for (int i = 52; i < 62; i++) {
pardStore[i] = (char) ('0' + (i - 52));
}
/********* End *********/
// 分别以1、2、3作为种子数 生成6位随机密码
Scanner sc = new Scanner(System.in);
int seed = sc.nextInt();
/********* Begin *********/
Random r=new Random(seed);
for (int i = 0; i < 6; i++) {
int n = r.nextInt(62);
System.out.print(pardStore[n]);
}
/********* End *********/
第五题
请仔细阅读右侧代码,根据方法内的提示,在Begin - End区域内进行代码补充,具体任务如下:
编写测试类,算一下你的出生日期到2020年10月1日总共有多少天;
具体输出要求请看测试说明。
测试说明
补充完代码后,点击测评,平台会对你编写的代码进行测试,当你的结果与预期输出一致时,即为通过。
/********* Begin *********/
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Date d1 = sdf.parse(line);
long myTime = d1.getTime();
Date d2 = sdf.parse("2020-10-01");
long endTime = d2.getTime();
long time = endTime - myTime;
long day = time / 1000 / 60 / 60 / 24;
System.out.println("你的出生日期距离2020年10月1日:" + day + "天");
/********* End *********/
第六题
请仔细阅读右侧代码,根据方法内的提示,在Begin - End区域内进行代码补充,具体任务如下:
编写测试类MathTest,输入4个int类型数值,7个double类型数值;
分别输出第一个数的平方根,第二个数的立方根,第三个数的第四个数次方,第五个数和第六个数的最大值、最小值,第七个数的绝对值,第八个数的ceil值,第九个数的floor值,第十个数的rint值,第十一个数的round值。
/********* Begin *********/
System.out.println(Math.sqrt(a1));
System.out.println(Math.cbrt(a2));
System.out.println(Math.pow(a3,a4));
System.out.println(Math.max(a5,a6));
System.out.println(Math.min(a5,a6));
System.out.println(Math.abs(a7));
System.out.println(Math.ceil(a8));
System.out.println(Math.floor(a9));
System.out.println(Math.rint(a10));
System.out.println(Math.round(a11));
/********* End *********/
欢迎大家一同探讨Java有关问题。共勉!
人要么永不做梦,要么梦得有趣;人也必须学会清醒:要么永不清醒,要么清醒得有趣。------------尼采
欢迎大家关注我的公众号,获取更多资源。
我是谁?
一名在校大学生
让我们一起学习、一起努力!