20172333 2017-2018-2 《Java程序设计》第6周学习总结

教材学习内容

1.数组的基本用法,如数组的定义:int[该数组类型] name = new int[X]X为数组对象多少。索引是从0开始,即X=30,则对象的索引为0~29.

2.数组声明方式有两种,都可以用 int[] name或者int name []

3.数组可单独作为一个单独对象当做参数使用,即可以使用方法对整个数组内的对象使用。


代码调试中的问题和解决过程

  • [x] 问题1:在pp8.1的编写过程中,遇到的定义一个数组的索引上限为50,结果输入20,显示超出索引。图

  • 解决过程:按常理来说,定义索引为50,则在0~49就不应该出错,这里却出现错误,尝试过输入其他数值,结果依旧是错误,我抱着试一试的心态把索引的常量定义为一个极限int大的值,原以为应该不会出错,但结果依然不变,我突发灵感想到,可能错误不在这里,就把目光移到下面我使用过索引值的地方,在一个while语句中看到了一处int b = -1 zs[b++]的疑似语句,在开始我输入这段语句是为了让代码从0开始进入,后来进行一些调整后发现错误消失了,也算了解到在索引上用++在第一次使用该对象时不会+1,而会先用该对象的数值进行一轮循环。
  • [x] 问题2:运行pp8.1的过程中,出现无论输入什么值,最终结果输出0~50都会有1次出现。图

  • 解决过程:在进行测试过程中,我有想过是不是我的if语句有错误,并多次将引用数组中的代码移出if语句,最后发现是我for语句中的索引的那个对象值使用错误。

  • [x] 问题3:Idea运用时建立不了.class类。图

  • 解决过程:
    遇事不决问百度,查阅知道,Idea中需要定义文件夹为source类型才可以建立。
    -总结:在做这个pp5.7的时候算是我第一次独自码这么100多行的Java程序,过程有点艰辛,但是还是有些收获,比如刚开始做这个PP5.7的时候我还单独列了一些处理该PP5.7 的一些要处理的问题,这样做PP5.7的时候不至于摸不着头。如图
    ---

    教材学习中的问题和解决过程

  • [x] 问题1:在书8.1中提及过这样一句话“从效率的角度来讲,访问第500个元素与访问第一个元素一样容易。”,书上只是列出元素地址的计算方法便得到这个结论。
  • 解决过程:理解不能,百度咨询没有相关内容。
  • [x] 问题2:在书8.2.4中“如果元素的类型是基本类型,则将传递元素值的副本;如果元素是一个对象的引用,则将传递对象引用的副本。”
  • 解决过程:我尝试过对一个Int数组使用数学方法Math.aprt的方法,不知道为什么,报错了。我不太明白如果对于一个数组到时成功运行后会是对该数组内所有的对象都运用一次方法,还是可以单独指定其中某些使用方法。


代码托管

(statistics.sh脚本的运行结果截图)


点评:

  • 博客中值得学习的或问题:

    在用Math.sqrt(double num)方法时候,IDEA报错说num应该为int类型,而书上也写着无论是输出的sqrt还是输入的num都应该为double型.

在遇到问题后,进行资料查阅以及相关修改,值得我学习。

  • 代码中值得学习的或问题:
    在进行Git commit时的备注内容有条理且井然有序。

点评过的同学博客和代码

  • 本周结对学习情况

    • 20172330李楠
    • 结对照片
    • 结对学习内容
      • Commit内容丰富值得学习
      • 问题及处理方法记录简洁明了。

上周考试错题总结

1.问题:Which of the sets of statements below will add 1 to x if x is positive and subtract 1 from x if x is negative but leave x alone if x is 0?

A . if (x > 0) x++;

else x--;

B . if (x > 0) x++;

else if (x < 0) x--;

C . if (x > 0) x++;

if (x < 0) x--;

else x = 0;

D . if (x == 0) x = 0;

else x++;

x--;

E . x++;

x--;

分析:如果x是正的,x++是在x=-x时执行的,否则,什么都不会发生,或者x不受影响。在A、C、D和E中,逻辑是不正确的。在A x中,如果x不是正的,那么如果x=0,x变成-1,这是错误的答案。在C中,如果x是正的,那么就执行x++。在任何一种情况下,下一个语句都被执行,如果x不是负数,则执行else子句设置x为0。所以如果x是正的,在这组代码之后它就变成了0。在D、x++和x中——如果x不是0,都是执行的。在E中,这段代码并没有试图确定x是否。

2.问题:As in the other members of the C family of languages (C, C++, C#), Java interprets a zero value as false and a non-zero value as true.

A . true

B . false

分析: Java中保留字中有True和false,不用0或1来表示。

3.问题:When comparing any primitive type of variable, == should always be used to test to see if two values are equal.

A . true

B . false1

分析:==在Java中永远是用来定义两个值是否相同。

4.问题:In order to compare int, float and double variables, you can use <, >, ==, !=, <=, >=, but to compare char and String variables, you must use compareTo( ), equals( ) and equalsIgnoreCase( ).

A . true

B . false

分析:语法没有错误,只是使用的人很蠢。


学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第一周 125/125 2/2 20/20
第二周 269/394 2/4 未知/38
第三周 477/920 1/5 X/X
第四周 1179/2338 1/6 --
第五周 1131/3154 1/7 ?/?
第六周 1448/4008 1/8 ?/??

参考资料

20172333 2017-2018-2 《Java程序设计》第6周学习总结的更多相关文章

  1. 学号 20175212 《Java程序设计》第九周学习总结

    学号 20175212 <Java程序设计>第九周学习总结 教材学习内容总结 一.MySQL数据库管理系统 1.在官网上下载并安装MySQL 2.在IDEA中输入测试代码Connectio ...

  2. 20145213《Java程序设计》第九周学习总结

    20145213<Java程序设计>第九周学习总结 教材学习总结 "五一"假期过得太快,就像龙卷风.没有一点点防备,就与Java博客撞个满怀.在这个普天同庆的节日里,根 ...

  3. 20145213《Java程序设计》第二周学习总结

    20145213<Java程序设计>第二周学习总结 教材学习内容总结 本周娄老师给的任务是学习教材的第三章--基础语法.其实我觉得还蛮轻松的,因为在翻开厚重的书本,一股熟悉的气息扑面而来, ...

  4. 20145213《Java程序设计》第一周学习总结

    20145213<Java程序设计>第一周学习总结 教材学习内容总结 期待了一个寒假,终于见识到了神秘的娄老师和他的Java课.虽说算不上金风玉露一相逢,没有胜却人间无数也是情理之中,但娄 ...

  5. 21045308刘昊阳 《Java程序设计》第九周学习总结

    21045308刘昊阳 <Java程序设计>第九周学习总结 教材学习内容总结 第16章 整合数据库 16.1 JDBC入门 16.1.1 JDBC简介 数据库本身是个独立运行的应用程序 撰 ...

  6. 20145330孙文馨 《Java程序设计》第一周学习总结

    20145330孙文馨 <Java程序设计>第一周学习总结 教材学习内容总结 刚开始拿到这么厚一本书说没有压力是不可能的,开始从头看觉得很陌生进入不了状态,就稍微会有一点焦虑的感觉.于是就 ...

  7. 20145337 《Java程序设计》第九周学习总结

    20145337 <Java程序设计>第九周学习总结 教材学习内容总结 数据库本身是个独立运行的应用程序 撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的增删查找 JDBC可以 ...

  8. 20145337 《Java程序设计》第二周学习总结

    20145337 <Java程序设计>第二周学习总结 教材学习内容总结 Java可分基本类型与类类型: 基本类型分整数(short.int.long).字节(byte).浮点数(float ...

  9. 20145218《Java程序设计》第一周学习总结

    20145218 <Java程序设计>第一周学习总结 教材学习内容总结 今天下午看了Java学习的视频,感觉很是新奇,之前觉得Java学起来是艰难枯燥的,但通过第一章的学习觉得如果自己可以 ...

  10. 《Java程序设计》第九周学习总结

    20145224 <Java程序设计>第九周学习总结 第十六章 整合数据库 JDBC入门 ·数据库本身是个独立运行的应用程序 ·撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的 ...

随机推荐

  1. mysql只读模式的设置方法与实验【转】

    在MySQL数据库中,在进行数据迁移和从库只读状态设置时,都会涉及到只读状态和Master-slave的设置和关系. 经过实际测试,对于MySQL单实例数据库和master库,如果需要设置为只读状态, ...

  2. angular4.0和angularJS、react.js、vue.js的简单比较

    angularJS特性 模板功能强大丰富(数据绑定大大减少了代码量) 比较完善的前端MVC框架(只要学习这个框架,按照规定往里面填东西就可以完成前端几乎所有的的问题) 引入了Java的一些概念 ang ...

  3. VirtualBox上安装CentOS-7(Minimal)

    Windows 10家庭中文版,VirtualBox 5.2.12,CentOS 7(Minimal版), 因为听到大家在谈论CentOS,阿里云上也有CentOS,CentOS还是Red Hat出品 ...

  4. 如何从TFS(Visual Studio Team Foundation Server)映射下载本地文件夹

    1.连接tfs项目 首先打开vs2017 ——>工具栏 中的   团队——> 选择团队的管理链接 2.选择管理工作区 显示管理工作区的弹窗,点击 编辑  显示弹窗,选择本地文件夹(即要保存 ...

  5. HTML5 Differences from HTML4

    Abstract "HTML5 Differences from HTML4" describes the differences of the HTML5 specificati ...

  6. TypeScript的配置文件 tsconfig.json

    //tsconfig.json指定了用来编译这个项目的根文件和编译选项 { "compilerOptions": { //compilerOptions:编译选项,可以被忽略,这时 ...

  7. RobotCraft 2017 第二届国际机器人学暑期学校 2nd Edition of International Robotics Summer School

    原文网址:http://www.ros.org/news/2017/02/2nd-edition-of-international-robotics-summer-school-robotcraft- ...

  8. 让你的 JMeter 像 LoadRunner 那样实时查看每秒事务数(TPS)、事务响应时间(TRT)

    熟悉 LoadRunner 的朋友一定不会对其 TPS(每秒事务数).TRT(事务响应时间) 等视图感到陌生,因为这是压力测试最为关键的两个指标.JMeter 以其开源.轻巧.灵活.扩展性高等特性赢得 ...

  9. appium----adb shell输入中文/Emoji表情符(ADBKeyBoard)

    前序 “adb shell input textyoyo“ 可以通过adb 输入英文的文本,由于不支持unicode编码,所以无法输入中文,github上有个国外的大神写了个ADBKeyBoard输入 ...

  10. 参数化SQL语句

    避免SQL注入的方法有两种:一是所有的SQL语句都存放在存储过程中,这样不但可以避免SQL注入,还能提高一些性能,并且存储过程可以由专门的数据库管理员(DBA)编写和集中管理,不过这种做法有时候针对相 ...