教材学习内容总结

这星期主要学习了Java语言中的各种运算符以及基本的一些语句,除了个别地方之外大部分和以往C语言学的东西比较相似,在比较中看教材学习比较容易掌握第三章的内容,课后练习的难度也不是很大

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

  1. 在Java中,小数都默认为是double型,因此类似float a=0.1的语句就会产生编译错误,Java担心因精度不够而产生数据丢失
  2. 打印语句System.out.println()与以往C语言的打印函数printf()有所不同,printf()里面是一定需要加引号的,但是在System.out.println()中如果加了引号Java就会认为此时是需要打印普通的字符串,是不具有计算的能力的。例如System.out.println(3+2)的结果是5加上换行,但是System.out.println("3+2")的结果是3+2加上换行。这点对于刚开始接触这个打印语句的我而言有不习惯的感觉
  3. 关于条件运算符。在学习中我发现其实条件运算符相当于简化版的if-else语句,但是有一点条件运算符并不能做到:条件运算符必须要有赋值的过程,但是if-else并没有这个要求。因此在使用的时候若有赋值的过程,可以优先考虑条件运算符,这样可以简化代码,当不存在赋值的过程,则使用if-else语句
  4. 关于位运算符。之前学习C语言时也接触过位运算符,但是并不知道位运算符有什么作用,这周通过学习,我觉得位运算符在提高代码执行效率上有着很大的作用,因为它十分贴近数据在内存中存储的方式。例如,3*4其实可以写成3<<2,但这样可能会使代码的阅读性下降。但是位运算符左移和右移在提取一个变量的某几位中有很大的便利,期待之后的学习中看到位运算符更多的作用
  5. 关于异或运算符,运算规律其实很好记:相同为0,不同为1。让我觉得比较有趣的是异或运算符在交换两个数据的时候可以不使用第三个变量,因为一个数异或两次之后就还是原来的那个数,我觉得这个运算符与本专业的学习也有一丝关联,加密运算其实就是可以对一个数据进行一次异或运算,而相应的解密就是再对数据进行一次异或运算,当然我相信这种加解密的方法过于简单=_=
  6. 关于&和&&、|和||的区别。其实大部分都没什么区别,我感觉唯一的不同之处在于&&和||在某些情况下会比&和|的执行效率会更高。例如,1>3&&4>3的执行效率会比1>3&4>3要快,虽然结果都一样,但是这种情况下我想也会存在一个问题,对于表达式A&&B,如果B中存在一个赋值表达式,万一A不成立,那么B将不会被赋值,这里在实际编程过程中比较容易忽略,会以为B中完成了赋值的操作
  7. 对于3种循环语句和选择语句和以往的C语言中相应部分的学习没有太多不同的地方,直接使用以往的知识就好

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

本周的代码都比较简单,不存在太难的地方,所以并没什么特别的调试过程,但是为了熟悉IDEA软件中调试的方法,还是调试了一下

代码托管


上周考试错题总结

  1. 德雷福斯技能学习模型把技能获取分为五个阶段:新手、高级新手、胜任者、精通者、专家,其中( 新手 )不能离开详细的指令
  2. IDEA教程中有关调试有四种断点:行断点,方法(函数)断点,(条件断点)和临时断点。
  3. git log 命令来查看(提交历史)
  4. IDEA教程中IDEA的安装是通过Toolbox来安装的。(OK)

其他(感悟、思考等,可选)

对于本周的学习内容,50%以上的内容在学习C语言的过程中均有所接触,所以在自主学习的过程中并没有遇到太多的问题,但是毕竟Java和C是不一样的,很多东西自己看上去以为是明白的,但是在实际操作自己打代码的时候,照着打也会出现打错的时候,因此我觉得在学习的过程中我应该更加细心一些。其次Java毕竟是一门实践性很强的课程,主动动手敲代码也是很有必要的,在这过程中不仅可以巩固已掌握的知识,还可以发现自己存在的一些知识盲点,非常有助于学习

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第一周 25 1 12 对IDEA、git、JDK、JVM有了更多的了解,面对学习过程中遇到的困难学会自己主动地寻找办法去解决
第二周 156/181 1/2 12/24 掌握了Java中的基本运算符和基本语句

参考资料

20155321 2016-2017-2 《Java程序设计》第二周学习总结的更多相关文章

  1. 20145304 刘钦令 Java程序设计第二周学习总结

    20145304 <Java程序设计>第2周学习总结 教材学习内容总结 java可区分基本类型和类类型(即参考类型)两大类型系统. 基本类型主要可区分为整数.字节.浮点数.字符与布尔. 整 ...

  2. 201521123063 JAVA程序设计 第二周学习总结

    1.本周学习重点(2.27-3.5) java中的数组 以二维数组为例,数组名为scores,则 (1)先声明数组 int[][] scores;或int scores[][];或int[] scor ...

  3. 2017面向对象程序设计(Java)第二周学习总结

    2017面向对象程序设计(Java)第二周学习总结 直系学妹学弟们好!额...不要问我为什么把学妹放前面,我也不知道!我只是你们和蔼可亲的学长一枚而已.也不要问为什么是第二周学习总结而不是第一周,因为 ...

  4. 201871010106-丁宣元 《面向对象程序设计(java)》第二周学习总结

    丁宣元 <面向对象程序设计(java)>第二周学习总结 正文开头 项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在 ...

  5. 201521044152<java程序设计>第一周学习总结

    本周学习总结 java开发时间虽然很短,但是发展迅速,已成为现在非常流行的一门语言,很开心能有幸学习java.第一周学习了java的平台,运行环境jdk以及jrt等等新名词,还了解了eclipse的基 ...

  6. 20145304 刘钦令 Java程序设计第一周学习总结

    20145304<Java程序设计>第1周学习总结 教材学习内容总结 1995年5月23日,是公认的Java的诞生日,Java正式由Oak改名为Java. Java的三大平台是:Java ...

  7. 201621123007 Java程序设计第一周 学习总结

    第一周-Java基本概念 201621123007 <Java程序设计> 第一周学习总结 1. 本周学习总结 java是面向对象的一类语言,三大特征:封装性,继承性,多态性. jdk jr ...

  8. 201871010121 王方 《面向对象程序设计(java)》 第二周学习总结

    这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在哪里 https://www.cnblogs.com/nwnu-daizh/p/11475 ...

  9. 杨其菊201771010134《面向对象程序设计Java》第二周学习总结

    第三章 Java基本程序设计结构 第一部分:(理论知识部分) 本章主要学习:基本内容:数据类型:变量:运算符:类型转换,字符串,输入输出,控制流程,大数值以及数组. 1.基本概念: 1)标识符:由字母 ...

  10. 201777010217-金云馨《面向对象程序设计(Java)》第二周学习总结

    项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在哪里 https://www.cnblogs.com/nwnu-daizh/p ...

随机推荐

  1. Join的加强版CountDownLatch

    CountDownLatch允许一个或多个线程等待其他线程完成操作. 假如有这样一个需求:我们需要解析一个Excel里多个sheet的数据,此时可以考虑使用多线程,每个线程解析一个sheet里的数据, ...

  2. 13、Node.js 全局对象

    主要用于调试,显示信息,重点看例子在浏览器 JavaScript 中,通常 window 是全局对象, Node.js 中的全局对象是 global ####__filename__filename ...

  3. 理解活在IPHONE中的那些APP (五)

    为了让App活起来 上一篇简单的说了一下关于IOS的一些事情,现在有必要深入了解一些对于让App活起来比较关键的信息.比如IOS系统的架构,这个我就不赘述了,请移步http://blog.csdn.n ...

  4. VNC Viewer

    首先需要明确,什么事VNC , Virtual Network Computing ,VNC允许Linux系统可以类似实现像Windows中的远程桌面访问那样访问Linux桌面. 首先试试服务器装了V ...

  5. 复习静态页面polo-360

    1.ps快捷键 ctrl+1 恢复到100% ctrl+0 适应屏幕大小 ctrl+r 显示标尺 辅助线的利用 矩形框--图像--裁剪:文件存储为web所用格式,注意选格式. 1个像素的平铺 雪碧图的 ...

  6. MyBatis(2)-全局配置文件

    本文的代码是在MyBatis(1)-简单入门基础之上进行学习的,如有不懂请先看此博文MyBatis(1)-简单入门! 1)配置文件的安装 --->在联网的情况下,点击去下载http://myba ...

  7. PHP异步:在PHP中使用 fsockopen curl 实现类似异步处理的功能

    PHP从主流来看,是一门面向过程的语言,它的最大缺点就是无法实现多线程管理,其程序的执行都是从头到尾,按照逻辑一路执行下来,不可能出现分支,这一点是限制php在主流程序语言中往更高级的语言发展的原因之 ...

  8. Level/levelup-1-简介

    https://github.com/Level/levelup A node.js wrapper for abstract-leveldown compliant stores 一个为实现抽象le ...

  9. 关于CUDA C 项目中“ error C2059: 语法错误:“<” ”问题的解决方法

    该问题的关键在于理解CUDA项目中C\C++文件需要由c++编译器进行编译,而CUDA C的源文件需要由CUDA的编译器nvcc.exe进行编译. 发生该语法错误的原因是cu文件被C++编译器所编译, ...

  10. 【题解】洛谷P1966 [NOIP2013TG] 火柴排队(树状数组+逆序对)

    次元传送门:洛谷P1966 思路 显然在两排中 每排第i小的分别对应就可取得最小值(对此不给予证明懒) 所以我们只在意两排的火柴是第几根 高度只需要用来进行排序(先把两个序列改成有序的方便离散化) 因 ...