20165233 Java第八、十五章学习总结
20165233 2017-2018-2 《Java程序设计》第六周学习总结
教材学习内容总结
ch08
- 基础:String类
- 重点:StringTokenizer类、Scanner类;获取字符序列中被分隔符分隔的单词。
- 拓展:StringBuffer类、Date类与Calendar类(程序需要处理时间时使用)、日期格式化、Math类、BigInteger类(程序需要处理特别大的整数)与Random类、数字格式化(当需要格式化日期和数字时,使用String类的static方法format)
- 难点:Class类与Console类、Pattern类与Match类
ch15
- 泛型:使用“class 名称”声明一个泛型类,当使用泛型类声明对象时,必须要用具体的类型(不能是基本数据类型)替换泛型列表中的泛型。
- 链表:LinkedList泛型类创建的对象以链表结构存储数据。
- 堆栈:Stack泛型类创建一个堆栈对象,堆栈总是在顶端进行数据的输入输出操作。
- 散列映射:HashMap<K,V>用于存储键/值数据对,使用散列映射来存储经常需要检索的数据,可以减少检索的开销。
- 树集:TreeSet类创建树集,当一个树集中的数据是实现Comparable接口类创建的对象时,结点就按对象的大小关系升序排列。
- 树映射:TreeMap<K,V>类创建树映射时,树映射的结点存储键/值对,和树集不同的是,树映射保证结点是按照结点中的键升序排列。
教材学习中的问题和解决过程
- 问题1:教材192页Example8_12的程序中,
%-7.2f
的含义是什么? - 问题1解决方案:查找教材的207页得到了答案。
%-md
指在数字右面加空格,数字长度为7,且保留两位小数。 - 问题2:为什么Scanner类没有传单词个数的方法呢?
- 问题2解决方案:Scanner类不把单词存放到Scanner对象的实体中,仅仅存放怎样获取单词的分隔标记来节省内存空间,这样Scanner类就不像StringTokenizer类的对象一旦诞生就立刻知道单词数目,并通过countTokens()方法返回单词数目,Scanner类必须一个一个地获取才能知道单词数目。
- 问题3:教材198页Example8_15中,
month = calendar.get(Calendar.MONTH)+1
为什么要加1? - 问题3解决方案:由于程序本身计算月份是从0开始,加1后符合人们的认知习惯。
- 问题4:教材199页Example8_16中,声明的String数组的大小为42?(一个月只有最多31天)
- 问题4解决方案:由于输出日历要与星期数相对应,所以会有空格占位置,一行7个位置对应一周7天,六行是因为,如果一个月的第一天是周六,那么有几天的日期会依次顺延到第6行,所以声明的大小为42。
代码调试中的问题和解决过程
- 问题1:教材182页中的Example8_4.java的例子,运行后应该是可以从键盘输入若干个数的,但是我运行后直接输出
sum=0.0
的结果是为什么?
- 问题1解决方案:这个问题暂时没有解决,没有找到原因。用命令行与IDEA运行结果都是如此。
- 问题2:教材183-184页中的Example8_5.java,运行报错是找不到符号
Date
?
- 问题2解决方案:教材中的主类的程序中,缺少
import java.util.Date;
的语句,导致无法找到Date
。更改之后运行正常。
代码托管
上周考试错题总结
- 第五周课下测试尚未截止,无法订正答案,随后补上。
其他(感悟、思考等,可选)
本周学习内容中第8章的内容,不是特别难理解,重在运用,可以通过许多常用类简化自己的程序,不用自己设计复杂的算法。常用类种类繁多,每个类都有自己的分工,也体现出Java的“高内聚”,即对象的单一性与内聚性。第15章内容与数据结构有很大的关联性,也有细微的区别,也是更方便存储与处理数据的一些方法。
20165233 Java第八、十五章学习总结的更多相关文章
- “全栈2019”Java第八十五章:实现接口中的嵌套接口
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...
- “全栈2019”Java第八十四章:接口中嵌套接口详解
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...
- “全栈2019”Java多线程第二十五章:生产者与消费者线程详解
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java多 ...
- “全栈2019”Java多线程第十五章:当后台线程遇到finally
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java多 ...
- “全栈2019”Java异常第十五章:异常链详解
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java异 ...
- “全栈2019”Java第八十九章:接口中能定义内部类吗?
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...
- “全栈2019”Java第八十二章:嵌套接口能否访问外部类中的成员?
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...
- “全栈2019”Java第七十五章:内部类持有外部类对象
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...
- “全栈2019”Java第六十五章:接口与默认方法详解
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...
- “全栈2019”Java第四十五章:super关键字
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...
随机推荐
- Java中的基本数据类型及其封装类
Java中的数据类型有两种,基本数据类型和引用数据类型,引用数据类型的创建是 需要去new一个对象,该对象的内存分配在堆区,同时栈区会保存一个指向该对象的引用, 但是对于一些简单数据的创建,用new的 ...
- phpstudy一个域名配置两个网站(一个是thinkphp5,一个是原生php)
phpstudy一个域名配置两个网站(一个是thinkphp5,一个是原生php) 一.总结 一句话总结:把原生php的网站直接放到thinkphp5的public目录下可以解决以stem.aaaa. ...
- 如何获取Android应用的packageName和ActivityName,识别应用中的控件
1.获取Android应用的packageName和ActivityName A:adb logcat >log.txt 在log中搜索package B:adb shell logcat | ...
- POJ-3744-概率dp+矩阵幂(分段)
Scout YYF I Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 10214 Accepted: 2980 Desc ...
- 51nod-1420-贪心
1420 数袋鼠好有趣 题目来源: CodeForces 基准时间限制:1 秒 空间限制:131072 KB 分值: 40 难度:4级算法题 收藏 关注 有n只袋鼠.每只袋鼠的大小用一个整数表示 ...
- HttpResponse 类
而封闭HTTP输出信息的类型就是HttpResponse类,使用HttpResponse类可以实现三种类型的输出,即文本,URL,二进制流. 实现这三类的属性和方法分别介绍如下:1.文本的输出,在日 ...
- Ubuntu 分区方安
方案一: / 40G/boot 200MBswap 1G-2G /home 20G 剩 下的分为几个独立的分区,不用指定挂载点,而是安装完成后修改 /etc/fstab ,将这些区挂载在/home的子 ...
- Django rest framework源码分析(一) 认证
一.基础 最近正好有机会去写一些可视化的东西,就想着前后端分离,想使用django rest framework写一些,顺便复习一下django rest framework的知识,只是顺便哦,好吧. ...
- jsp登录页面,展示错误信息,刷新页面后错误依然存在解决方案
在做登录页面的时候,通常使用form表单同步提交的方法进行提交的,也就是在form表单里去写action,如果登录失败,jsp通过jstl表达式获取错误信息展示在页面上,但是有一个问题就是,即使你刷新 ...
- CASIO 5800P计算器游戏--猜数字游戏
CASIO 5800P 计算器游戏--猜数字游戏原代码 我编的计算器小游戏--猜数字游戏 LbI I↙ "xxGUESS NUMBERxx xPROGRAMMER:JCHx -------- ...