zoukankan      html  css  js  c++  java
  • 作业02-Java基本语法与类库

    1. 本周学习总结

    以几个关键词描述本周的学习内容。并将关键词之间的联系描述或绘制出来。
    原则:少而精,自己写。即使不超过5行也可,但请一定不要简单的复制粘贴。

    2. 书面作业

    1. String-使用Eclipse关联jdk源代码

    1.1 查看String对象的源代码(截图),分析String使用什么来存储字符串?
    1.2 分析其构造函数public String(char value[]) 的作用?
    1.3 阅读public String replace(char oldChar, char newChar)方法的代码,回答String的不可变性在该函数中如何体现?(重点)
    1.4 简述String与字符数组的关系,使用字符数组就可以处理字符串,为什么还需要String呢?
    参考资料:

    Eclipse 如何查看jdk源码

    2. StringBuilder

    2.1 结合PTA (StringBuilder) ,说明为什么频繁修改字符串时,应该使用StringBuilder而不是String?
    2.2 阅读jdk文档,查询StringBuilder的append(char[] str) 方法功能是什么?试分析StringBuilder内部使用什么来存放字符?调用StringBuilder的append(char[] str)方法时,是如何实现添加字符的操作?

    3. 字符串与字符串池

    3.1 尝试使用字符串池的概念解释如下程序段输出结果,并回答这段代码创建了几个字符串对象:

    String str1 ="hi", str2="hi";
    String str3 = new String(str1)
    System.out.println(str1==str2);
    

    3.2 重点:对基本类型我们可以使用比较两个值是否相等,对于引用类型(如String, Integer、数组等)为什么不能使用比较?应该怎样比较他们的值是否相等呢?

    4. Wrapper(包装类)

    4.1 Integer i = 100;//100是基本类型,i是引用类型,为什么可以将100赋值给i?Integer x = 100; int y = x+1;x++;这一串命令中包含了些什么操作?
    4.2 Java为什么有了基本数据类型,还需要其包装类呢?包装类能给我们带来什么好处呢?

    5. PTA实验总结

    5.1 结对编程实践:使用结对编程的方式完成本周编程题目,即两个人同时合作完成实验题目(可1题也可多题,但最好是是两个人都没做过的题目)。推荐实施步骤:1.两个人坐在同一台电脑屏幕前判题,讨论、决定大概由谁先写。2. 1个人先编5分钟(自己商量多少分钟),同时另一个人观察对方编程或者查相关资料。3. 5分钟后,简单讨论后,换另外一个人继续编(请一定要换,另一个人如果无法接受应由第一个人讲解大概思路以方便其接受)。并完成如下作业:a.描述结对队友姓名、结对过程,提供非摆拍的两人在讨论、细化和编程时的结对照片。b.结对编程真的能够带来1+1>2的效果吗?通过这次结对编程,请谈谈你的感受和体会(如是否有利于自己编程水平的提高、是否有利于开拓编程思路)。
    5.2 综合小测验
    5.3 身份证排序。并回答:使用sort2方法进行排序可以对出生年月日进行升序排序,如果现在有需要对其进行降序排序,或者按照其中的出生月份排序,怎么解决呢?
    5.4 动态数组
    5.5 (重点:小测题目)ArrayList入门。并回答:为什么有了数组还要使用ArrayList?
    5.5 选做:浮点数计算、枚举、大整数相加

    6. 选做:公交卡里应该还有多少钱?请分析原因

    1.png

    7. 选做(难):package与javac、 java、 -classpath、 -d与Eclipse

    com.ibm包中编写 StringUtil类,内有一方法

    public static void foo1(){
         System.out.println(StringUtil.class+" method:foo1");
    }
    

    edu.jmu包中编写Main类,调用com.ibm.StringUtil的foo1方法。
    7.1 尝试用命令行进行编译并运行,截图
    edu.jmu包中编写Main类,其中掉了com.ibm.StringUtil的foo1方法
    7.2 将生成的StringUtil.class放到d:lib下正确的目录结构下,将Main.class放到d: est下正确的目录结构,尝试在命令行下运行,并截图。
    7.3 Eclipse中自己编写的源代码放在哪个目录、class文件放在哪个目录(给出绝对目录)?在Eclipse项目中按一下Ctrl+F11就可以直接运行Main,当按下Ctrl+F11时,到底在哪个目录下执行了什么样的java命令?
    参考资料:

    PPT中"8. 类管理机制:包"

    3. 码云及PTA

    3.1. 码云代码提交记录

    • 在码云的项目中,依次选择“统计-Commits历史-设置时间段”,然后搜索并截图

    3.2 截图PTA题集“Java基本语法”完成情况图

    需要有两张图(1. 排名图。2.PTA提交列表图)

    3.3 使用师姐开发的jar程序统计每周的代码量

    注意:请使用学姐更新的1.0版,使用新版前请先删除以前information.txt
    需要将每周的代码统计情况融合到一张表中。如下表所示

    周次 总代码量 新增代码量 总文件数 新增文件数
    1 200 200 3 3
    2 500 300 7 4

    4. 小任务(加分)

    实验任务书中的题目2(Math类应用)、6(一个实用的身份证信息查询程序)、8(作业随机分配)。截图运行界面和参考代码即可。
    参考资料:

    Java第2次实验文件.zip

  • 相关阅读:
    303. Range Sum Query
    302. Smallest Rectangle Enclosing Black Pixels
    301. Remove Invalid Parentheses
    The Swift.org Blog Welcome
    About Swift
    Swift is Open Source
    Swift is Now Open Source
    加快Terminal的打开加载速度
    加快Terminal的打开加载速度
    [note]What I’ve learnt from working on startups
  • 原文地址:https://www.cnblogs.com/zhrb/p/8978552.html
Copyright © 2011-2022 走看看