20162307 第3周学习总结
20162307 2016-2017-2 《程序设计与数据结构》第3周学习总结
教材学习内容总结
- 创建对象
多个引用变量可以指向同一个对象
-String类
-包
import声明
Java标准类库中的包
-Random类
-Math类
-格式化输出
NumberFormat类
DecimalFormal类
-枚举类型
-包装类
教材学习中的问题和解决过程
- 1. 问题: 为什么不需要在程序中引入String类?
解决方案: 上网查。String类属于java.lang包,这个包可以自动引入任意Java程序中
- 2. 问题:为什么String对象不可变?
解决方案:一旦创建了对象,他的值就不能再加长再加短,也不能改变其中的任何字符。
代码调试中的问题和解决过程
-
- 问题:有的时候提示我出现一堆错误
解决方案:发现我刚刚开始创建的String对象与下面的不一样,一致之后就好了
- 问题:有的时候提示我出现一堆错误
-
- 问题:在写代码中,有fmt.format,以前未出现
解决方案:fmt.format标签用于格式化数字,百分比,货币。
- 问题:在写代码中,有fmt.format,以前未出现
代码托管
-
代码提交过程截图:
- 运行 git log --pretty=format:"%h - %an, %ci : %s" 并截图
- 运行 git log --pretty=format:"%h - %an, %ci : %s" 并截图
-
代码量截图:
- 运行 find src -name "*.java" | xargs cat | grep -v ^$ | wc -l 并截图
- 运行 find src -name "*.java" | xargs cat | grep -v ^$ | wc -l 并截图
上周考试错题总结
- 错题1:Java程序开发中遇到的逻辑错误,命令行中要用(JDB)进行调试。
理解:调试程序先要学会设置断点,这样才能让程序停在你感觉有问题的代码处进行排查。设置四种断点:
方法断点、行断点、条件断点、临时断点 - 错题2:Java中的字符‘a’的长度是(2)个字节。
理解:‘a’和“a”的区别:C规定以字符‘\0’作为字符串结束标志,‘\0’是一个ASCII码为0的字符,它不会引起任何控制动作,也不是一个可显示的字符。
字符串“a”实际包含2个字符:‘a’和‘\0’ - 错题3:计算题
理解:算术运算: +、 -、*、/、%
关系运算:注意不要对浮点数进行相等性运算
>、>=、<、<=、==、!=
逻辑运算:运算结果是boolean值:true Or false
与(&&)
或(||)
非(!)
位运算 :运算结果为位串(位向量),常用于掩码(Mask)运算
与(&):全1为1,有0则0
或(|):全0为0,有1则1
非(~):书上说是补码,按我们的习惯应该是反码
异或(^):相同为0,不同为1
左移(<<):最右补0
算术右移(>>):右移后,正数最高位补0,负数最高位补1
逻辑右移(>>>):右移后,最高位总是补0
自增,自减:
i++,i--
++i,--i
其他(感悟、思考等,可选)
我觉得学习Java的过程就是一个漫长并且是一个在不断积累的过程,每一个字符都有他的意思,所以只有实践到才能了解它是什么意思。所以要多多练习,才能有进步。
学习进度条
代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
---|---|---|---|---|
目标 | 5000行 | 30篇 | 400小时 | |
第一周 | 72/100 | 2/2 | 20/20 | |
第二周 | 234/500 | 2/4 | 18/38 | |
第三周 | 636/1000 | 3/7 | 16/60 | |
第四周 | 300/1300 | 2/9 | 30/90 |
-
计划学习时间:20小时
-
实际学习时间:16小时