20175308 2018-2019-2 《Java程序设计》第二周学习总结

教材学习内容总结:

第二章学习内容:
1.认识标识符与关键字

2.java的八种数据类型,着重记好精度由高到低的排序依次是double、float、long、int、char、short、byte、boolean

3.将级别低的变量值赋给级别高的变量时,系统会自动完成数据类型的转换。而级别高的变量值赋给级别低的变量时则必须使用类型转换运算。

4.输入基本型数据要引入java.util.Scanner。在之后的学习我们学会了java.util.* 可以引入所有java.util下的类。

5.有关数组的使用。从声明数组,为数组分配元素以及对数组的初始化。数组作为引用型变量,引申出两个同类型的变量赋值时传递引用而非直接赋值的过程。一通百通,对数据结构的内容也能更好的理解。

第三章学习内容:
第三章内容主要有关与运算符、表达式与语句,在学习的过程中发现与C、Python无根本上的不同,理解上也较为容易。这里就不一一列举,单独选取一些java独特的内容或是较为不熟悉的内容

1.算术混合运算中,如果表达式中最高精度低于int型,则按int精度进行运算,但是要注意可能会发生损失精度的错误导致编译不通过。

2.位运算符在操作逻辑型数据时,与逻辑运算符不同的点在于在经过位运算之后,运算中的变量值会改变。

3.reader调用nextBoolean()等方法都会造成阻塞。经常让reader对象先调用hasNextXXXX()方法等待用户输入数据

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

  • 问题1:第二章课后习题选择题(2),不理解0x0123
    — 问题1解决方案:上机调试结果为


    经查阅与计算可知,该数字为16进制的整形,float值接受到一个int型证书,自动类型转换为float。
  • 问题2:对于Example3_9中“只有hasNextDOuble()接受带小数点的数字返回值为true”无法理解。
  • 问题2解决方案:实地调试发现,将代码中hasNextDouble的换为其他数据类型,再输入带小数点的数字,程序会直接结束。因为返回false后,while语句后的循环无法执行。

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

  • 问题1:在课后习题求“8+88+888+..."前10项和时发现得出结果与答案代码所得结果不一致
    — 问题1解决方案:仔细观察可发现,在定义变量时没有定义为long类型,导致数据缺失,远小于正确答案,修改数据类型定义后,答案正确。
  • 问题2:课后习题中,输出某sum值时,编译出错
  • 问题2解决方案:错误提示清楚指出因为没有对sum进行初始化,将sum初始值设为0后,结果正确。
  • 问题3:出现以下错误:
  • 问题3解决方案:仔细观察代码,发现错误仅是因为在编写时多打了一个括号,简单修改后正确

代码托管

上周考试错题总结

上周考试早在上周已经写过,本周测试没有答案。但是分数上不是很满意。由于个人参加比赛的冲突,第二次测试机会白白浪费。这里仍然可以反省一下自身存在的问题。对于死的概念记忆牢固,但是举一反三上仍有欠缺,尤其涉及循环的内容上,如果不上机实地编译,头脑混乱不清晰。希望在之后能够更加善于读代码。

一些心得:

在标识符的学习时。有同学问了这样一个问题,为什么数字不可以作为标识符的第一个字符。在回答这是语法规则之外,我又多思考了一下为什么会这样规定语法规则。标识符可以作为变量名,而数字可以作为变量的最后字符,如果数字也可以作为标识符的第一个字符,那么一个单纯由数字组成的标识符势必是合法的,但数字又不能作为变量,前后冲突,也就有了这样的语法规则?我觉得在学习中应该这样思考一下一些约定俗成的规则到底是因为什么而设立,理解比单纯的记忆能更清晰的将知识熟记于心。同时,在答疑中其他同学的问题也都可以验证,自行写代码来进行解答,如图:

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第一周 2/2 2/2 14/14
第二周 391/432 1/3 15/29

参考 :

在本周的学习中,我开始准备转战IDEA来编写程序,经过娄老师[Intellj IDEA 简易教程](https://www.cnblogs.com/rocedu/p/6371315.html#SECIDEA)中的指导,我已经安装了IDEA,并申请学生免费使用

有关IDEA的使用,我会在下一篇博客中进行叙述。

JAVA 第二周学习总结的更多相关文章

  1. 20165210 Java第二周学习总结

    20165210 Java第二周学习总结 教材学习内容总结 - 第二章学习总结 标识符与关键字: 重点在50个关键字 标识符并不能是关键字 标识符的第一个字符不能是数字字符 Unicode字符集简单了 ...

  2. 201521123093 java 第二周学习总结

    201521123093 <java程序设计> 第二周学习总结 一.第二周学习总结 答:(1)关于进一步使用码云管理代码,本周才真正学会了如何将Eclipse里的代码上传到码云中,并且能够 ...

  3. 20165326 java第二周学习笔记

    学习笔记 一.理论学习 基本数据类型与数组 标识符的第一个字符不能是数字:标识符不能为关键字. 基本数据类型多数与c语言相同.重点如下: 1.逻辑类型boolean赋值true/false 2.浮点数 ...

  4. JaVa第二周学习总结

    第一周学习的时候上传图片用的是网站外链然后导致出现了极为尴尬的情形...然后我就把第一周的全改成本地上传了. 首先列出所做任务 1 安装IDEA 2学习二三章视频,课本 3调试代码,上传码云 4总结问 ...

  5. 201521123122 Java 第二周学习总结

    1. 本周学习总结 1.进一步了解了对码云的使用,学会了将本地代码上传到码云以及将码云上的代码克隆到eclipse上. 2.感觉本章学的基本语法和c的基本上差不多啊 3.string的对象创建后无法修 ...

  6. 20165221 JAVA第二周学习心得及体会

    基本数据类型与数组理论学习 根据第二章的网课链接,归纳出以下板块: 知识框架 标识符与关键字 1.标识符 其本质是文件名字 标识符的第一个字符不能为数字,标识符不能为关键字(如inter) 标识符不能 ...

  7. 20145207 java第二周学习总结

    教材学习内容总结 这部分可能要扒一些课本而上的东西了.在第三章中,知道了Java可区分为基本类型和类类型两大类型系统,其中类类型也称为参考类型.在这一周主要学习了类类型. 对象(Object):存在的 ...

  8. java第二周学习日记

    day01 1.抽象类 (1)抽象类的应用场景: 我们在描述一类事物的时候,发现该种事物确实存在着某种行为,但是这种行为目前不是具体的,那么我们可以抽取这种行为的声明,但是不去实现该种行为,这时候这种 ...

  9. 2016221 Java第二周学习补充

    对switch语句的理解 在程序中遇到switch时,要将switch后的表达式与后续程序中的case常量进行比较,如若相等,程序将执行后面所有的case语句,直到遇到break 为止.如果走完整个程 ...

随机推荐

  1. 使用ThinkPHP实现分页功能

    前几篇(上传,缩略图,验证码,自动验证表单)文章介绍的功能实现都是基于ThinkPHP框架封装好的类进行实现的,所以这次自己写一个分页类在框架中使用. 首先在根目录建一个Tools文件夹,在Tools ...

  2. 纯小白入手 vue3.0 CLI - 2.1 - 组件 ( component )

    vue3.0 CLI 真小白入手全教程系列:https://www.cnblogs.com/ndos/category/1295752.html 我的 github 地址 - vue3.0Study  ...

  3. sql语句查找某一列的值得最大值。

    记录一下:sql语句查找某一列的值得最大值. 1.例如我要查找 表A中a列的最大值: 查找语句可以这么写: "select Max(a) a from A" 2.查找表A中a列中包 ...

  4. css继承属性与非继承属性

    一.无继承性的属性 1.display:规定元素应该生成的框的类型 2.文本属性: vertical-align:垂直文本对齐 text-decoration:规定添加到文本的装饰 text-shad ...

  5. MariaDB实现主从配置及读写分离(一)

    一.主从复制方案 1.  在两台CentOS7虚拟机上分别部署MariaDB, 主数据库服务器IP为192.168.17.235, 从服务器IP为192.168.17.238. 从服务器通过调取主服务 ...

  6. JBoss 7 里一个EJB依赖其他jar的几种方式

    JBoss 7 与之前的版本有了巨大的变化,最核心的类的加载方式变了,有点类似OSGI那样搞起来了分模块的类加载方式,而不是以前的分层类加载.按以前的类加载方式,在加载树底下的那些类,总是能看到父节点 ...

  7. c#中的数据类型简介(委托)

    什么是委托? 委托是一种类型,它封装了一类方法,这些方法具有相同的方法签名(signature)和返回类型.定义听起来有点拗口,首先可以确定委托是一种数据类型,那么什么是方法签名,其实就是指方法的输入 ...

  8. 华为交换机VRRP 综合配置示例

    组网需求: 楼层1和楼层2分别通过两条线路做冗余接入交换机(本示例只考虑vrrp,暂不考虑其他方面).当其中一段链路故障时,能通过另外一条链路传输. 配置信息: <lsw9>dis cu ...

  9. gnome-shell 使用 notify-send 发送桌面消息

    什么是notify-send? notify-send - a program to send desktop notifications 怎么使用? NAME notify-send - a pro ...

  10. python-异常处理try_except

    异常处理try-except 在我们写程序的时候经常会遇到一些异常或错误,导致程序终止 当我们使用计算器时,用10除以0会提示 一个简单的错误代码(10/0) a = 10 / 0 print(&qu ...