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

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

教材学习内容总结

  • 第三章要点:

    • 要点1 :String类、Random类、Math类和枚举型,这几个是很有用的并且应该深刻理解熟练使用的。

    • 要点2 :别名、包的概念和import声明主要是理解清楚。

    • 要点3 :至于格式化输出的两类和printf方法以及包装器类也应该掌握。

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

  • 问题1:String类里面的一些概念,例如:一旦创建了String对象,该对象的长度就不可再更改,并且也不能修改对象中的任何一个字符。

  • 解决方案1:提出了这个问题,并且结合书上的一些例题大概知道了:String是对象不是原始类型,为不可变对象,一旦被创建,就不能修改它的值,对于已经存在的String对象的修改都是重新创建一个新的对象,然后把新的值保存进去,String 是final类,即不能被继承。

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

  • 问题1:再编完一个代码之后就有点高兴了,结果在最后犯了迷糊,连字符串拼接的格式都忘了。

  • xx1解决方案 :照着编写错误的提示一步一步重新找一次,结果发现是这种低级错误,果然还是不熟练啊。

  • 问题2 :原本是想照着以前数学书上的形式,在解题的最后写一个公式完美的得出答案,后来发现似乎不行,不断修改最后还是屈服了,照着书上的公式,再分成多个部分。

  • 解决方案2 :最后还是只有按照书上例题的样式进行编写,而且最后还忘了把输出的E改成F,又回去找了好一会才发现。

代码托管

上周考试错题总结

  • 错题1及原因,理解情况
    Consider the following statement:
    System.out.println("1 big bad wolf\t8 the 3 little pigs\n4 dinner\r2night");
    This statement will output ________ lines of text (思考下面的语句,该语句将输出___行文本)
    A . 1
    B . 2
    C . 3
    D . 4
    E . 5
    转义序列\R导致回车返回(即将光标移回左侧边缘),但是由于它没有启动一个新行,所以“2night”的输出值超过“4 dinn”,从而产生了一个类似“2nighter”的第二行。

  • 错题2及原因,理解情况
    The word println is a(n) (单词println是一个)
    A . method (方法)
    B . reserved word (保留字)
    C . variable (变量)
    D . class (类)
    E . String (字符串)
    println作为消息传递给system.out对象,因此println是一种方法。

  • 错题3及原因,理解情况

What value will z have if we execute the following assignment statement?
int z = 50 / 10.00; (如果我们执行下面的赋值语句,z将得到什么值?)
A . 5
B . 5.0
C . 50
D . 10
E . none of the above, a run-time error arises because z is an int and 50 / 10.00 is not (以上皆错,因z是一个整型数而50 / 10.00不是,会产生运行时错误)
因为10.00不是INT,所以该除法产生的double不能存储在INT Z中,因此要使其工作,在存储在Z之前必须将该除法的结果转换为INT,或者在进行除法之前必须首先将该值转换为INT。

  • 错题4及原因,理解情况
    You cannot cast a String to be a char and you cannot cast a String which stores a number to be an int, float or double. (你不能将字符串强制转换为char类型,也不能将一个字符串强制转换为int、float或double类型。)
    A . true
    B . false
    没有可用的机制将字符串转换为一个基元类型,但是有一些方法可以在给定位置(charAt)执行类似的操作并返回字符,或者返回INT、float或等效于字符串中存储的数字的双值。

  • 错题5及原因,理解情况
    The values of (double) 5 / 2 and (double) (5 / 2) are identical. ((double) 5 / 2和(double) (5 / 2)的值是相同的。)
    A . true
    B . false
    在第一个表达式中,(double)转换应用于INT 5,将其更改为双重值5.0。然后计算5.0/2,得到两倍值,2.5。在第二个表达式中,首先执行INT除法,生成值2。然后将2改为一个双值,生成两个值2.0。

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第一周 189/189 1/1 18/18
第二周 250/439 2/3 21/39
第三周 437/876 3/6 25/64
第四周 659/1535 2/8 31/90
posted @ 2018-03-25 15:30  N-idhogg  阅读(192)  评论(4编辑  收藏  举报