20155315 2016-2017-2 《Java程序设计》第二周学习总结
教材学习内容总结
在教材中,有一句话叫做
伪代码是最好的注释。
一开始我不理解什么是伪代码,但在参考了百度和C语言的学习过程后,我发现伪代码的作用就相当于是解决问题前期的流程图设计,伪代码设计好了之后就可以用编程语言进行编程了。而为了保证程序的高效,条理清晰、命令明确的伪代码在编译的过程中就能帮助人们更好地理解并使用程序。
在Java编程中,整数可以用二进制(0bdddd),八进制(0ddd)、十进制(dddd)、十六进制(0Xdddd)进行表示,都是有符号的,这就要求在编译的时候要注意整数的数制和题目要求的是否一样,以免结果出错。
教材中提到
关系运算:注意不要对浮点数进行相等性运算,可以试试1.0-0.7==0.3?
我尝试之后发现结果并不等于0.3,这点在之后的实验中要尤其注意。
public class Math{
public static void main(String[] args) {
System.out.println(1.0 - 0.1);
System.out.println(1.0 - 0.2);
System.out.println(1.0 - 0.3);
System.out.println(1.0 - 0.4);
System.out.println(1.0 - 0.5);
System.out.println(1.0 - 0.6);
System.out.println(1.0 - 0.7);
System.out.println(1.0 - 0.8);
System.out.println(1.0 - 0.9);
System.out.println(1.0 - 1.0);
}
}
运行结果如下图

代码调试中的问题和解决过程
在用git提交代码的过程中,时常出现提示
远程库已经更新,但本地分支没有更新
这时候就用
git pull origin master
先将远程库的更新下载到本地,再用
git push origin master
将代码推送到码云的项目中。
要注意的是:Git中从远程的分支获取最新的版本到本地有这样2个命令:
- git fetch:相当于是从远程获取最新版本到本地,不会自动merge。
git fetch origin master
git log -p master..origin/master
git merge origin/master
以上命令的含义:
首先从远程的origin的master主分支下载最新的版本到origin/master分支上,然后比较本地的master分支和origin/master分支的差别,最后进行合并。
上述过程其实可以用以下更清晰的方式来进行:
git fetch origin master:tmp
git diff tmp
git merge tmp
从远程获取最新的版本到本地的test分支上,之后再进行比较合并。
- git pull:相当于是从远程获取最新版本并merge到本地。
git pull origin master
上述命令其实相当于git fetch 和 git merge。
在实际使用中,git fetch更安全一些。因为在merge前,我们可以查看更新情况,然后再决定是否合并。
代码托管
首先在src文件夹中新建两个文件夹week1和week2
mkdir week1
mkdir week2
用tree命令查看子文件

用statistics脚本查看代码行数

将本周做的修改上传到码云的项目中

在码云中查看上传的代码

上周考试错题总结
第一周错题
- 1.填空:Linux Bash中,可以使用help,man和(info)命令查找命令的帮助信息。理解情况:不常使用帮助信息,多打开帮助能少走弯路。
- 2.填空:在 Linux 系统里, (root) 账户拥有整个系统至高无上的权利。理解情况:通常要修改管理者权限要用sudo,这里指的就是root账户。
- 7.填空:Linux Bash中,使用(groups)命令来查看用户属于哪些用户组。理解情况:之前建新用户的时候没有用命令行,现在可以用groups打开用户组。
- 15.填空:Linux Bash中,使用echo查看环境变量PATH值的命令是(echo $PATH)理解情况:没在Linux中查看过环境变量,现在知道可以用echo $PATH查看环境变量PATH。
第二周错题
- 3.填空:德雷福斯技能学习模型把技能获取分为五个阶段:新手、高级新手、胜任者、精通者、专家,其中( 新手 )不能离开详细的指令。理解情况:新手刚刚接触一项事物,这时候最需要他人的指导才不至于走弯路。
- 4.编程中要写三种代码:(伪代码 ),产品代码,测试代码。理解情况:伪代码介于计算机语言和自然语言之间。
- 10.只有通过(TCK)兼容性测试的实现,才可以使用Java这个商标。理解情况:TCK : Test Compatibility Kit 是测试兼容组件。
- 30.填空:IDEA教程中有关调试有四种断点:行断点,方法(函数)断点,(条件断点)和临时断点。理解情况:函数断点指调试到函数结束就停止;条件断点指让调试在指定的地方停止。
思考与感悟
因为我的电脑不支持虚拟化,我一开始只能在Windows上完成老师要求的操作。后来为了练习在Linux的代码托管及对文件的修改,我在舍友的虚拟机中新建了一个用户,并在这个用户中用命令行完成了包括添加文件夹、添加文件、删除或移动文件、复制文件、编写代码等等一系列操作。之前在实验楼上的实验就让我体会到Linux与Windows系统之间的不同,但直到我自己用虚拟机完成这些操作的时候,才发现与我们传统的模式完全不一样。在寒假的学习中,我认识到键盘是Linux中最重要的零件。有了键盘,即使没有鼠标,也可以用命令行完成所需要的一切操作,这也许就是这么多人在接触Linux之后不愿在回到windos操作模式的原因了吧。就我自己而言,本身是挺习惯界面操作的,但熟悉了命令行之后,结合打字速度,感觉Linux比Windows顺畅多了。
学习进度条
| 代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
|---|---|---|---|---|
| 目标 | 5000行 | 30篇 | 400小时 | |
| 第一周 | 20/20 | 1/1 | 10/10 | 安装了JDK、IDEA和Git,写了第一个Java程序 |
| 第二周 | 97/117 | 2/3 | 20/30 | 用Linux上传代码,熟悉修改文件的命令行 |
- 计划学习时间:30小时
- 实际学习时间:25小时
参考资料
20155315 2016-2017-2 《Java程序设计》第二周学习总结的更多相关文章
- 20145304 刘钦令 Java程序设计第二周学习总结
20145304 <Java程序设计>第2周学习总结 教材学习内容总结 java可区分基本类型和类类型(即参考类型)两大类型系统. 基本类型主要可区分为整数.字节.浮点数.字符与布尔. 整 ...
- 201521123063 JAVA程序设计 第二周学习总结
1.本周学习重点(2.27-3.5) java中的数组 以二维数组为例,数组名为scores,则 (1)先声明数组 int[][] scores;或int scores[][];或int[] scor ...
- 2017面向对象程序设计(Java)第二周学习总结
2017面向对象程序设计(Java)第二周学习总结 直系学妹学弟们好!额...不要问我为什么把学妹放前面,我也不知道!我只是你们和蔼可亲的学长一枚而已.也不要问为什么是第二周学习总结而不是第一周,因为 ...
- 201871010106-丁宣元 《面向对象程序设计(java)》第二周学习总结
丁宣元 <面向对象程序设计(java)>第二周学习总结 正文开头 项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在 ...
- 201521044152<java程序设计>第一周学习总结
本周学习总结 java开发时间虽然很短,但是发展迅速,已成为现在非常流行的一门语言,很开心能有幸学习java.第一周学习了java的平台,运行环境jdk以及jrt等等新名词,还了解了eclipse的基 ...
- 20145304 刘钦令 Java程序设计第一周学习总结
20145304<Java程序设计>第1周学习总结 教材学习内容总结 1995年5月23日,是公认的Java的诞生日,Java正式由Oak改名为Java. Java的三大平台是:Java ...
- 201621123007 Java程序设计第一周 学习总结
第一周-Java基本概念 201621123007 <Java程序设计> 第一周学习总结 1. 本周学习总结 java是面向对象的一类语言,三大特征:封装性,继承性,多态性. jdk jr ...
- 201871010121 王方 《面向对象程序设计(java)》 第二周学习总结
这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在哪里 https://www.cnblogs.com/nwnu-daizh/p/11475 ...
- 杨其菊201771010134《面向对象程序设计Java》第二周学习总结
第三章 Java基本程序设计结构 第一部分:(理论知识部分) 本章主要学习:基本内容:数据类型:变量:运算符:类型转换,字符串,输入输出,控制流程,大数值以及数组. 1.基本概念: 1)标识符:由字母 ...
- 201777010217-金云馨《面向对象程序设计(Java)》第二周学习总结
项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在哪里 https://www.cnblogs.com/nwnu-daizh/p ...
随机推荐
- Ubuntu apt-get 更换源
Ubuntu apt-get 更换源 我们使用清华的镜像源进行更换 Ubuntu 的软件源配置文件是 /etc/apt/sources.list.将系统自带的该文件做个备份,将该文件替换为下面内容,即 ...
- 阿里八八——预则立&&他山之石
团队计划--α版本Issues 概况 采访团队:"一起买"开发团队 采访形式:团队--团队 团队采访 内容提炼 项目选题 团队选题本身并没有大的亮点,但是可以从功能下手,多想想项目 ...
- 简单说说Spring Security 使用(附加验证码登录,自定义认证)
先看官方文档:http://docs.spring.io/spring-security/site/docs/4.0.x/reference/htmlsingle/ spring security4已 ...
- 使用python 操作liunx的svn,方案二
在对liunx操作svn的方式,做了改动,使用python的,subprocess进行操作 在第一种方案中,我使用了先拉到本地,然后再创建,在进行上传,实际在svn中可以直接创建文件,并进行文件复制, ...
- 历史在重演:从KHTML到WebKit,再到Blink
http://36kr.com/p/202396.html 上周四,Google宣布从WebKit 分支出自己的浏览器渲染引擎 Blink.很多人觉得这像是晴天霹雳,或者甚至是迟到的愚人节笑话,但是其 ...
- 【51nod 1514】 美妙的序列
题目 我们发现我们得正难则反 还是设\(f_i\)表示长度为\(i\)的序列个数 考虑容斥 \[f_i=i!-\sum_{j=1}^{i-1}f_j(i-j)!\] \(i!\)显然是总方案数,我们减 ...
- [Java123] Java中的System.exit
参考:http://www.cnblogs.com/xwdreamer/archive/2011/01/07/2297045.html System.exit(int status) 方法 java ...
- C#流概述
C#流概述 .NET Framework使用“流”来支持读取或写入文件.可以将流视为一组连续的一维数据,包含开头和结尾,并且其中的游标指示了流的当前位置. 1.流操作 流中包含的数据可能来自内存.文件 ...
- ASP.Net MVC的学习
套种间作,也挺有意思的——近来学习感悟.DRP学习的同时,折腾了点以前不曾学习但是却很多次耳闻过的东西——Asp.Net中的MVC架构模式. 一.是什么? MVC,即(Model-View-Contr ...
- Android 面试题之编程
1.排序 package cn.java.suanfa; public class SuanFa { public static void main(String[] args) { int[] ar ...