学号 20162327 《程序设计与数据结构》第3周学习总结
教材学习内容总结
- 1.第三章主要讲了各种类的使用,包括我们最常用的String类,其中的String(String str)、char charAt(int index)、int length是我们最常用的几个方法,charAt是我认为比较重 要的一个方法,尤其是字符串中第一个字符串的下标是0这个规定和容易弄错。
- 2.有关import声明的内容,以前都是要输入import java.util.Scanner来声明Scanner这个特定的类,但随着程序的复杂化,我们会使用到更多的类,现在我一般都会输入import java.lang.*;来简化代码。)
- 3.关于Math类中的Random方法该方法是生成一个0-1.0的随机小数,Math就是直接调用Random中的nextDouble方法实现的。掌握Random类的使用方法是十分重要的。
- 4.格式化的输出内容,系统默认的小数位数应该是3位,改变小数位数的方法为DecimalFormat fmt = new DecimalFormat("0.#######"),有几个#号就保留几位小数。还有转化为货币输出和百分比输出两种输出方式。
教材学习中的问题和解决过;程
- 1问题:[0,10)区间的整数
- Random r = new Random();
int n1 = r.nextInt(10);
n1 = Math.abs(r.nextInt()%10);
生成[1,2.5)区间的小数
double n2 = r.nextDouble()*1.5+1 - 2问题:关于prinf的方法的补充
- 2解决方案:原样输出字符串 prinf("%s",str)
输出指定长度的字符串,超长时不截断,不足时右对齐 prinf ("%Ns",str),N为指定长度的十进制
相反的,左对齐为prinf("-Ns",str)
输出指定长度的字符串,超长时截断,prinf("%N.Ms",str),M为从字符串中截取的长度。
代码调试中的问题和解决过程
- 1问题:再次遇到git push问题
- 解决方案:这次总结出方法,先git pull,再git push.如果还不能成功,可以-f强制提交,对个人的小项目影响不大,但是这种方法不是很严谨。
- 2问题:vim 编辑器的技巧
- 解决方案:Ctrl+v----列编辑
插入---- -g
ctrl+r----选中
x----删完
U ----撤销
ctrl+r ----重做
:set number----显示行数
:set ai----代码缩进
代码托管
-
代码提交过程截图:
-
代码量截图
上周考试错题总结
- 1.填空:Linux Bash中,(grep )命令可以进行全文检索。
- 2.填空:Java程序开发中遇到的逻辑错误,命令行中要用(JDB)进行调试,IDEA也可以用。
- 3.填空:Java中的字符‘a’的长度是(2)个字节。
- 4.判断:Java中, 数字2351l 的类型是 int 。应该是lang类型
- 5.判断: Java中, 数字235.00的类型是float.计算机中默认的是int
- 6.填空:0b1011的十进制值是(-12)0b代表的是二进制,代表的是“非”,补全1011得00001011,在进行后续的计算
- 7.判断:Java中,’0’和0的值是相等的。( X )在计算机内部是不一样的
- 8.判断:Java中字面量只能出现在赋值语句的右边。(OK)
- 9.判断:System.out.printf("%b", 11)的输出结果是0b1011 (X)
- 10.判断: 0.123 == 1.23e-2 (X)
- 11.填空 :0x10%8 的结果是(0 )%是取余的意思
- 12.填空 :0x10&9 的结果是(0)十六进制的10转化为十进制为16
- 13.填空: int i=3; System.out.println(i++);的结果是(3)i++是先输出i,再加1,++i是加1后再输出。
- 14.判断:byte a=3;byte b=4; 那么 a+b的类型也是byte.(X)
- 15.填空:System.out.println(52+25+””);的结果是(77)数字变成字符串
- 16.填空:Java中,Scanner类的(nextLine)方法提供了从标准输入获取一行文本的的能力。nextInt,nextDouble
其他(感悟、思考等,可选)
在这周的学习中,我阅读了很多老师和其他人的博客,这对我的帮助很大。有些原版的文档是全英文的,对于现在的我读起来还是有些难度的,但我还是努力的在克服语言这个障碍,这个时候,这些博客就为我理解知识提供了一个很好的途径。这些博客提供的方法、思维都不相同,促进了我多方面理解一个知识。毕竟要想作为一个优秀的程序员,都是要经历难熬的初学阶段的,他们的经验为我提供了很多的捷径,这使得我的进步很快。作为未来的小小程序员,我的第一步迈的还是相当踏实的,未来我会更加努力的!
学习进度条
代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
---|---|---|---|---|
目标 | 5000行 | 30篇 | 400小时 | |
第一周 | 100/100 | 1/1 | 16/16 | |
第二周 | 257/257 | 1/1 | 18/18 | |
第三周 | 465/465 | 1/1 | 22/22 | |
第四周 | 300/1300 | 2/9 | 30/90 |