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. 【Python学习笔记】Jupyter Lab目录插件安装

    Jupyter Lab目录插件安装 当然首先你得有python和已经安装了jupyter lab. 1 安装jupyter_contrib_nbextensions 首先先安装jupyter_cont ...

  2. gcc编译选项【转】

    转自:https://blog.csdn.net/rheostat/article/details/19811407 常用选项 -E:只进行预处理,不编译-S:只编译,不汇编-c:只编译.汇编,不链接 ...

  3. linux===sar命令性能监控

    sar介绍: sar是System Activity Reporter(系统活动情况报告)的缩写.sar工具将对系统当前的状态进行取样,然后通过计算数据和比例来表达系统的当前运行状态.它的特点是可以连 ...

  4. 金蝶K3,名称或代码在系统中已被使用,由于数据移动,未能继续以NOLOCK方式扫描

    使用金蝶K3时出现:名称或代码在系统中已被使用:错误代码:3604(E14H)source:Microsoft OLE DB provider for SQL SERVERDetail:由于数据移动, ...

  5. MySQL修改datadir目录

    更改MySQL的数据目录由/usr/local/mysql/data/更换至/data/mysql/ 第一种方法修改my.cnf 1)关闭MySQL [root@test2 ~]# service m ...

  6. MySQL分布式集群之MyCAT(三)rule的分析【转】

    首先写在最前面,MyCAT1.4的alpha版本已经发布了,这里面修复了不少的bug,也完善了一细节,之前两篇博客已经做了一些修改 ---------------------------------- ...

  7. Dapper实用教程

    Dapper是什么? Dpper是一款.Net平台简单(Simple)的对象映射库,并且Dapper拥有着“微型ORM之王”的称号.就速度而言与手写ADO.NET SqlDateReader相同.OR ...

  8. MySQL分页存储过程

    CREATE PROCEDURE ProcPage(in tableName varchar(20),#表名  in showField varchar(100),#要显示的列名  in whereT ...

  9. 洛谷P1286 两数之和

    这个题.. 刚开始没看见输入若干行,所以有的点就.. 令 m = n * (n - 1) / 2 已知 s = {s (1), s(2), ..., s(m)}, s(i) <= s(i+1) ...

  10. Codeforces 801C Voltage Keepsake(二分枚举+浮点(模板))

    题目链接:http://codeforces.com/contest/801/problem/C 题目大意:给你一些电器以及他们的功率,还有一个功率一定的充电器可以给这些电器中的任意一个充电,并且不计 ...