20182303 2019-2020-1 《数据结构与面向对象程序设计》第2&3周学习总结
教材学习内容总结
- 教材第二章内容
 
- 学习Java基本数据类型以及数据转换知识;
 println与print的用法和区别;- 转义字符的概念及用法;
 - 运算符(自增自减,赋值,加减乘除模)用法及优先级;
 - 学习Scanner类,编写可输入的程序。
 - 完成课后自测题,以及作业PP2.2,PP2.4,PP2.6等。
 
- 教材第三章内容
 
- 学习常用类(String类,Random类,Math类等)中的常用方法;
 - 学习格式化输出的不同方式;
 - 完成课后自测题,以及编程作业PP3.1,PP3.3,PP3.5。
 
教材学习中的问题和解决过程
- 问题1:对转义字符
\r与\n的功能区分不清 - 问题1解决方案:
\n表示回车换行;\r表示回车到当前行行首。 - 问题2:double和float数据类型定义不明确
 - 问题2解决方案:float是单精度类型,精度是8位有效数字,取值范围是10的-38次方到10的38次方,占用4个字节的存储空间;
double是双精度类型,精度是17位有效数字,取值范围是10的-308次方到10的308次方,占用8个字节的存储空间。
当你不声明的时候,默认小数都用double来表示,所以如果要用float的话,则应该在其后加上f
例如:float a=1.3;
则会提示不能将double转化成float
如果要用float来修饰的话,则应该使用float a=1.3f;
注意:float是8位有效数字,第7位数字将会产生四舍五入
所以如果:float a=1.32344435;
则第7位将产生四舍五入 
代码调试中的问题和解决过程
- 问题1:在输入字符时,使用nextChar方法
 - 问题1解决方案:
nextChar()方法根本不存在!!当需要输入字符时,需要截取字符串的第一个字符: 
- 新建类
Scanner scan = new scanner(System.in); - 定义一个字符串变量接受键盘输入
String s = scan.next(); - 使用charAt截取第一个字符
char c = s.charAt(0); 
- 问题2::在编写程序时,写错Scanner,Random等导致编译错误
 

- 问题2解决方案: 了解Java标识符的大小写规则,不要靠死记。
 

代码托管

上周考试错题总结
- Consider the following statement:
System.out.println("1 big bad wolf\t8 the 3 little pigs\n4 dinner\r2night");
This statement will output ________ lines of text (思考下面的语句,该语句将输出___行文本)
A.1 B.2 C.3 D.4 E.5
正确答案: B 我的答案:C
解析:\r是回车,\n是换行,前者使光标到行首,后者使光标下移一格。通常用的Enter是两个加起来
\t相当于键盘的Tab键,\n换行New Line,\r回车Carriage Return,基本的概念应该是回车表示回到最前面,换行表示换一行。 - Java is a strongly typed language. What is meant by "strongly typed"? (Java是一种强类型语言。“强类型”指的是什么?)
A.Every variable must have an associated type before you can use it (在使用变量之前,每个变量一定都有一个与之关联的类型)
B.Variables can be used without declaring their type (变量可以在不声明其类型的情况下使用)
C.Every variable has a single type associated with it throughout its existence in the program, and the variable can only store values of that type (在程序中,每个变量都有一个与之关联的类型,而变量只能存储该类型的值)
D.Variables are allowed to change type during their existence in the program as long as the value it currently stores is of the type it is currently declared to be (变量存在于程序中时允许改变类型,只要它当前存储的值是当前声明的类型)
E.Variables are allowed to change types during their existence in the program but only if the change is to a narrower type (变量存在于程序中时允许改变类型,但只能缩窄转换)
正确答案: C 我的答案: A
解析:对强类型的含义理解不清。
强类型是一种编程语言的属性,变量的类型在变量存在期间不会改变,并且存储在该变量中的任何值都是该类型的。 - A variable of type boolean will store either a 0 or a 1. (Boolean类型的变量将被存储为0或1)
A.true
B.false
正确答案: B 我的答案: A
解析:Java中用boolean定义布尔值,仅有两个值:true及false。 - When executing a program, the processor reads each program instruction from (当执行一个程序时,处理器从___读取每个程序指令)
A.secondary memory (storage) (辅助存储器(存储))
B.the Internet (互联网)
C.registers stored in the processor (储存在处理器中的寄存器)
D.main memory (主存储器)
E.could be any of these (可以是以上这些中的任何一个)
正确答案: D 我的答案: C
解析:程序在执行之前首先从辅助存储器加载到主存储器中,这样处理器就不会因为读取每条指令而减慢速度。执行存储在内存中的程序的思想被称为存储程序计算机,并在20世纪40年代由约翰·冯·诺依曼开创。(程序指令从辅存加载到主存,可以保证程序运行速度不受影响。) - The ability to directly obtain a stored item by referencing its address is known as (通过引用地址直接获得存储项的能力被称为___)
A.random access (随机存取)
B.sequential access (顺序存取)
C.read-only access (只读访问)
D.fetch access (获取访问)
E.volatility (易变性)
正确答案: A 我的答案: D
解析:随机访问:访问任何项目都同样容易,并且任何项目都可以仅基于其地址进行检索,即磁盘访问或直接访问。随机存取是RAM和ROM存储器使用的存取形式。 - Java is an example of a(n) (Java是一个___的例子)
A.machine language (机器语言)
B.assembly language (汇编语言)
C.high-level language (高级语言)
D.fourth generation language (第四代语言)
E.both C and D (C和D都是)
正确答案: E 我的答案: C
解析:高级语言易读易写,Java就是一种高级语言(课本)。Java是在第四代中创建的,它也是一种第四代语言。 - Which of the following is a legal Java identifier? (下面哪个是合法的Java标识符?)
A.i
B.class
C.ilikeclass!
D.idon'tlikeclass
E.i-like-class
正确答案: A 你的答案: B
解析:标识符“i”是完全合法的,但它不一定是一个好的标识符,因为它不描述其用途。 
结对及互评
点评
- 博客中值得学习的:
- 教材学习内容简要明了;
 - 针对自己的问题与错题写反思;
 
 - 问题:
学习内容总结可以再丰富一些,着重写出自己的薄弱点和理解深刻之处。 - 基于评分标准,我给本博客打分:13
 - 得分情况如下:
 
- 正确使用Markdown语法(加1分)
 - 模板中的要素齐全(加1分)
 - 教材学习中的问题和解决过程(加2分)
 - 代码调试中的问题和解决过程(加2分)
 - 其他加分(加7分)
- 进度条中记录学习时间与改进情况(1)
 - 感想,体会不假大空(1)
 - 有动手写新代码(1)
 - 错题学习深入(1)
 - 点评认真,能指出博客和代码中的问题(1)
 - 结对学习情况真实可信(1)
 - 代码实践行数够多(1)
 
 
学习进度条
| 代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
|---|---|---|---|---|
| 目标 | 10000行 | 30篇 | 400小时 | |
| 第一周 | 254/254 | 2/2 | 21/21 | 开始编写简单的程序 | 
| 第二周 | 132/386 | 1/3 | 26/47 | 学会使用Scanner类 | 
| 第三周 | 632/1018 | 2/5 | 21/68 | 学会使用部分常用类 | 
计划学习时间:20小时
实际学习时间:21小时
参考资料
- Java中标识符大小写规则
 
20182303 2019-2020-1 《数据结构与面向对象程序设计》第2&3周学习总结的更多相关文章
- 201771010134杨其菊《面向对象程序设计java》第九周学习总结
		
第九周学习总结 第一部分:理论知识 异常.断言和调试.日志 1.捕获 ...
 - 201871010132-张潇潇《面向对象程序设计(java)》第一周学习总结
		
面向对象程序设计(Java) 博文正文开头 项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在哪里 https://www.cn ...
 - 扎西平措 201571030332《面向对象程序设计 Java 》第一周学习总结
		
<面向对象程序设计(java)>第一周学习总结 正文开头: 项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在哪里 ...
 - 杨其菊201771010134《面向对象程序设计Java》第二周学习总结
		
第三章 Java基本程序设计结构 第一部分:(理论知识部分) 本章主要学习:基本内容:数据类型:变量:运算符:类型转换,字符串,输入输出,控制流程,大数值以及数组. 1.基本概念: 1)标识符:由字母 ...
 - 201871010115——马北《面向对象程序设计JAVA》第二周学习总结
		
项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在哪里 https://www.cnblogs.com/nwnu-daizh/p ...
 - 201777010217-金云馨《面向对象程序设计(Java)》第二周学习总结
		
项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在哪里 https://www.cnblogs.com/nwnu-daizh/p ...
 - 201871010124 王生涛《面向对象程序设计JAVA》第一周学习总结
		
项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在哪里 https://edu.cnblogs.com/campus/xbsf/ ...
 - 201871010132——张潇潇《面向对象程序设计JAVA》第二周学习总结
		
项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在哪里 https://www.cnblogs.com/nwnu-daizh/p ...
 - 201771010123汪慧和《面向对象程序设计Java》第二周学习总结
		
一.理论知识部分 1.标识符由字母.下划线.美元符号和数字组成, 且第一个符号不能为数字.标识符可用作: 类名.变量名.方法名.数组名.文件名等.第二部分:理论知识学习部分 2.关键字就是Java语言 ...
 - 2019面向对象程序设计(java)课程学习进度条
		
2019面向对象程序设计(java)课程学习进度条 周次 (阅读/编写)代码行数 发布博客量/评论他人博客数量 课余学习时间(小时) 学习收获最大的程序阅读或编程任务 1 20/10 1/0 5 九九 ...
 
随机推荐
- JS基础_枚举对象中的属性
			
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
 - 无法删除登录名 '***',因为该用户当前正处于登录状态。 (Microsoft SQL Server,错误: 15434)
			
问题描述: 当删除数据库用户时,有时会得到这样的提示: 无法删除登录名 '***',因为该用户当前正处于登录状态. (Microsoft SQL Server,错误: 15434) 解决办法: 1.首 ...
 - ActiveMQ入门系列三:发布/订阅模式
			
在上一篇<ActiveMQ入门系列二:入门代码实例(点对点模式)>中提到了ActiveMQ中的两种模式:点对点模式(PTP)和发布/订阅模式(Pub & Sub),详细介绍了点对点 ...
 - 小程序wxs价格显示小数点后两位
			
function toFix(data, val) { var numbers = ''; for (var i = 0; i < val; i++) { numbers += '0'; } v ...
 - ajax 传参数 java后台接收
 - 2.IOC 配置与应用(xml的方式)
			
1.注入方式 a)setter(主要) b)构造方法(可以忘记) c)接口注入(可以忘记) 2.id vs name bean 标签中可以使用 name 属性 来完成 id 属性的功能,不过习惯 ...
 - Centos 6.5 版本的下载教程
			
1.CentOS下载CentOS是免费版,推荐在官网上直接下载,网址:https://www.centos.org/download/ 2.选择版本推荐6.5 3.选择isos 4.根据系统电脑的配置 ...
 - What is libacl.so.1 ?
			
Google says, "This package contains the libacl.so dynamic library which contains the POSIX 1003 ...
 - Flutter——Row组件(水平布局组件)
			
Row组件的常用属性 属性 说明 mainAxisAlignment 主轴的排序方式 crossAxisAlignment 次轴的排序方式 children 组件子元素 import 'package ...
 - Dart的导包
			
Dart中的库主要有三种: 1.我们自定义的库 import 'lib/xxx.dart'; 2.系统内置库 import 'dart:math'; import 'dart:io'; import ...