zoukankan      html  css  js  c++  java
  • 20172325 2017-2018-2 《Java程序设计》第六周学习总结

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

    教材学习内容总结

    1.利用[ ]建立一个数组,整列数据可以通过数组名引用,数组中的每个元素则可以通过其在数组中的位置引用;
    2.数组的边界检查是通过对数组的大小进行提前的声明,一旦之后输入的值超过范围将自动终止;
    3.数组的声明方式有两种,或者说int[ ] grades = int grade[ ];
    4.在建立一个数组的时候,对象数组中所保存的每一个字符串是属于他自己的对象,数组中的每一个对象都必须实例化。
    5.建立了一个形参以后,将通过命令行调用main方法,javac和java将失去作用。

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

    • 问题1:对于例题里的for语句不是很懂“for (int value : list)”在之前的学习过程中并没有提到过这种说法,不明白具体意思,在本章也没有解释
    • 问题1解决方案:百度了一下,解释还挺多的

      专业说法叫遍历数组,个人理解的意思是在建立了一个数组之后,最后执行输出操作时能够具体的输出数组里的每一个值。

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

    • 问题1:在实际操作命令行实参之前,不知道什么意思,出现了一下情况

    • 问题1解决方案:在看了书和上网查询之后,了解到命令行实参的意义,并且参考了相关资料

    • 问题2:在编辑PP8.1的时候,运行时当我输入51的时候出现了下面的状况,但是其他在界外的数字就没有问题,程序正常终止。

    • 问题2解决方案:在我和张旭升小助教认真讨论之后,发现我们PP8.1编辑的BUG,也就是说是“差一错误”,之后对范围的定义进行了更改之后就成功了,当然,反面的0值也是一一个道理。

    • ...

    代码托管


    上周考试错题总结

    • 1.The idea that program instructions execute in order (linearly) unless otherwise specified through a conditional statement is known as flow of control
      解析:“控制流程”描述了指令执行的顺序。它默认为线性(或顺序),但通过使用控制语句(如条件和循环)进行更改。

    • 2.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--;
      正确答案:B
      解析:课本上有一个例子是,所以我就简单认为C选项是正确地,忘记看看两者内容的差别。正确的表达方式应该是B。

    • 3.The statement if (x < 0) y = x; else y = 0; can be rewritten using a conditional operator as:
      A .y = (x < 0) ? x : 0;
      B .x = (x < 0) ? y : 0;
      C .(x < 0) ? y = x : y = 0;
      D .y = (x < 0);
      E .y = if (x < 0) x : 0;
      正确答案:A
      解析:没有理解好条件运算符的表达方式。在这种情况下,Java测试一个条件(x<0)的条件操作符,如果是真的,则返回值之后的值?(在本例中为x),如果为false,则返回after:(本例中为0)的值。原始if语句是将y赋值为x if(x<0)和0。这将通过将y赋值为x或0来完成(x<0),如A.在B中所示,x被赋值为y或0的值,这是向后的。在C语言中,条件运算符在语法上是无效的。在D中,y将被设置为真或假,取决于(x<0),而E中的语句在语法上是无效的。

    • 4.If x is an int where x = 1, what will x be after the following loop terminates?
      while (x < 100)
      x *= 2;
      A . 2
      B . 64
      C . 100
      D . 128
      E . none of the above, this is an infinite loop
      解析:当x=64时,它仍然满足布尔表达式,所以还会执行一次,x=128,,不满足布尔表达式,输出。

    • 5.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
      解析:char变量也可以使用<, >, ==, !=, <=, >=,但字符串必须用compareTo( ), equals( ) and equalsIgnore

    • 6.You might choose to use a switch statement instead of nested if-else statements if
      A . the variable being tested might equal one of several hundred int values
      B . the variable being tested might equal one of only a few int values
      C . there are two or more int variables being tested, each of which could be one of several hundred values
      D . there are two or more int variables being tested, each of which could be one of only a few values
      E . none of the above, you would never choose to use a switch statement in place of nested if-else statements under any circumstance
      解析:switch语句只能在被测试的单个变量使用时使用,并且它是一个整型(int或Java中的char)。 此外,因为您必须枚举每个可能的测试值,所以switch语句只有在被测试值的数量很小时才有意义。

    结对及互评

    点评模板:

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

      • 在对课本的学习过程中她有很多值得我学习的地方,很多的批注体现了发现问题和解决问题的过程,这样一来对课本的理解就会更加深入。
      • 对于学习过程的一丝不苟,在学习第八章的过程中还能去发现个改善第五章的代码问题。
      • 在遇到问题时她的钻研精神值得我学习,主动研究,积极实践,善于提问。
    • 代码中值得学习的或问题:

      • 在本博客中,她对滴五章的代码进行了进一步研究,首先这个精神值得我学习,其次在她的改正过程中,也加深了我对这个知识点的理解和记忆。
      • 在她对索引过程的记录中,我也对索引有了更深的理解,明白了更加具体的应用。
      • 下次的问题,我也要在她前!!!
    • 基于评分标准,我给本博客打分:9分。

    点评过的同学博客和代码

    • 本周结对学习情况
      • 20172306
      • 结对照片
      • 结对学习内容
        • 一起学习了第八章内容,对代码的调试进行了交流学习;
        • 一起向学长请教了PP8.1的设计过程。

    学习进度条

    代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
    目标 5000行 30篇 400小时
    第一周 129/129 1/1 20/20
    第二周 359/488 1/2 18/38
    第三周 521/1009 2/4 22/60
    第四周 1057/2066 1/5 30/90
    第五周 636/2702 1/6 30/120
    第六周 489/3191 1/7 28/158

    参考资料

  • 相关阅读:
    为什么要进行需求分析?通常对软件系统有哪些需求?
    面向过程(或者叫结构化)分析方法与面向对象分析方法到底区别在哪里?请根据自己的理解简明扼要的回答。
    我们说 软件企业 = 软件 + 商业模式 下面提到的一个游戏团队, 有很好的软件,但是商业模式和其他软件之外的因素呢?有没有考虑到? http://news.cnblogs.com/n/528911/
    14软件工程第八次作业
    14软件工程第七次作业
    14软件工程第六次作业
    14软件工程第五次作业
    14软件工程第四次作业
    14软件工程第三次作业
    14软件工程第二次作业
  • 原文地址:https://www.cnblogs.com/20172325DYK/p/8849565.html
Copyright © 2011-2022 走看看