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

教材学习内容总结

本周学习了教材的第八章的内容,在这章中介绍了常用的实用类,着重讲了如何利用String类、StringBuffer类处理字符序列的信息,使用StringTokenizer、Scanner类分析字符序列,以及使用各种类进行时间处理、处理特别大的整数以及格式化。

String类

String常量是使用双引号括起来的字符序列,String变量使用构造方法分配内存空间并在内存空间中放入字符序列,然后计算出引用。
String对象可以使用“+”进行并置运算,参与并置的运算的String对象,只要有一个是变量,那么就会在动态区存放所得到的新的String对象的实体和引用。如果是两个常量进行并置运算,那么得到的仍然是常量。
String类的常用方法:

  • 1、public int length():用来获取一个String对象的字符序列的长度。
  • 2、public Boolean equanls(String s):比较当前String对象的字符序列是否与参数s指定的String对象的字符序列相同。
  • 3、public Boolean startsWith(String s)、public Boolean endsWith(String s)方法:判断当前的字符序列前缀是否是参数指定的String对象s的字符序列。
  • 4、public int compareTo(String s)方法:按字典序与参数指定的String对象s的字符序列比较大小。
  • 5、public Boolean contains(String s):判断当前String对象的字符序列是否包含参数s的字符序列。
  • 6、public int indexOf(String s)和public int lastIndexOf(String s):String对象调用方法indexOf(String str)从当前String对象的字符序列的0索引位置开始检索首次出现str的字符序列的位置,并返回该位置。如果没有检索到,该方法返回的值是-1.lastIndexOf(String s)方法检索最后一次出现str的字符序列的位置。
  • 7、public String substring(int startpoint):得到一个新的字符串,新的字符串是复制当前String对象的字符序列中的startpoint位置至最后位置上的字符所得到得字符序列。
  • 8、public static String valueOf(int n):将参数转化为String对象。
  • 9、public String toString()方法:获得该对象得字符串表示,可对该方法进行重写。
  • 10、public char[] toCharArray():将String对象的字符序列的全部字符存放在一个字符数组中。
  • 11、public boolean matches(String regex):判断当前String对象的字符序列是否和参数regex指定的正则表达式匹配。
  • 12、public String replaceAll(String regex,String replacement):返回一个新的替换后的String对象。
  • 13、public String[] split(String regex):使用参数指定的正则表达式regex作为分隔符标记分解出当前String对象的字符序列中的单词。

StringTokenizer类

可使用该类的对象分解String对象的字符序列,常用构造方法为StringTokenizer(String s),StringTokenizer(String s,String delim)。
常用方法:

  • 1、nextToken():逐个获取String对象的字符序列中的单词。
  • 2、hasMoreToken():只要字符序列中还有语言符号,该方法就返回true,否则返回false。
  • 3、countToken():返回剩余的字符的个数。

Scanner类

重要方法:

  • 1、next():依次返回被解析的字符序列中的单词。
  • 2、hasNext():可查看被解析的字符序列中是否还有单词。

StringBuffer类

String对象的字符序列是不可修改的,但StringBuffer类的对象的实体的内存空间可以自动地改变大小,便于存放一个可变的字符序列,构造方法为StringBuffer(),StringBuffer(int size),StringBuffer(String s)。
重要方法:

  • 1、length():获取实体中存放的字符序列的长度。
  • 2、capacity():获取当前实体的实际容量。
  • 3、StringBuffer append(String s):将String对象s的字符序列追加到当前StringBuffer对象的字符序列中,并返回当前StringBuffer对象的引用。
  • 4、public char charAt(int n)和public void setCharAt(int n,char ch):得到序列位置n上的字符和替换ch指定的字符。
  • 5、StringBuffer insert(int index,String str):将参数str指定的字符序列插入到参数index指定的位置。
  • 6、public StringBuffer reverse():将对象实体中的字符序列翻转。
  • 7、StringBuffer delete(int startIndex,int endIndex):从当前StringBuffer对象的字符序列中删除一个子字符序列,并返回当前对象的引用。
  • 8、StringBuffer replace(int startIndex,int endIndex,String str):将当前StringBuffer对象的字符序列的一个子字符序列用参数str指定的字符序列替换。

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

本周的学习内容并不算难度很高,教材的示例代码也给出了相关方法的作用以及具体使用方式,在学习过程中没有什么困难,但是仍存在相关类以及方法较多且较繁杂的问题,这需要在练习中加深印象。

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

  • 问题1:运行如图程序时显示方法已过时:
  • 问题1解决方法:使用javac -Xlint:deprecation Example8_20.java命令对代码进行编译,发现是newInstance()方法已过时。

代码托管

上周考试错题总结

  • 错题1:该错误应通过Exception类来进行描述。
  • 错题2:

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

在本周的学习过程中遇到了许多前面使用过的类,在这周的内容中介绍了更多的常用类并对前面出现过的类进行了拓展,个人觉得本章内容还是十分重要的,在做项目的过程中我多次用到了本周的内容,但常用类直接的关系以及类的各种方法容易混淆,需要在今后的联系中多理解。

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第七周 1140/6393 1/11 20/152

尝试一下记录「计划学习时间」和「实际学习时间」,到期末看看能不能改进自己的计划能力。这个工作学习中很重要,也很有用。
耗时估计的公式
:Y=X+X/N ,Y=X-X/N,训练次数多了,X、Y就接近了。

参考:软件工程软件的估计为什么这么难软件工程 估计方法

参考资料

20175320 2018-2019-2 《Java程序设计》第7周学习总结的更多相关文章

  1. 学号 20175212 《Java程序设计》第九周学习总结

    学号 20175212 <Java程序设计>第九周学习总结 教材学习内容总结 一.MySQL数据库管理系统 1.在官网上下载并安装MySQL 2.在IDEA中输入测试代码Connectio ...

  2. 20145213《Java程序设计》第九周学习总结

    20145213<Java程序设计>第九周学习总结 教材学习总结 "五一"假期过得太快,就像龙卷风.没有一点点防备,就与Java博客撞个满怀.在这个普天同庆的节日里,根 ...

  3. 20145213《Java程序设计》第二周学习总结

    20145213<Java程序设计>第二周学习总结 教材学习内容总结 本周娄老师给的任务是学习教材的第三章--基础语法.其实我觉得还蛮轻松的,因为在翻开厚重的书本,一股熟悉的气息扑面而来, ...

  4. 20145213《Java程序设计》第一周学习总结

    20145213<Java程序设计>第一周学习总结 教材学习内容总结 期待了一个寒假,终于见识到了神秘的娄老师和他的Java课.虽说算不上金风玉露一相逢,没有胜却人间无数也是情理之中,但娄 ...

  5. 21045308刘昊阳 《Java程序设计》第九周学习总结

    21045308刘昊阳 <Java程序设计>第九周学习总结 教材学习内容总结 第16章 整合数据库 16.1 JDBC入门 16.1.1 JDBC简介 数据库本身是个独立运行的应用程序 撰 ...

  6. 20145330孙文馨 《Java程序设计》第一周学习总结

    20145330孙文馨 <Java程序设计>第一周学习总结 教材学习内容总结 刚开始拿到这么厚一本书说没有压力是不可能的,开始从头看觉得很陌生进入不了状态,就稍微会有一点焦虑的感觉.于是就 ...

  7. 20145337 《Java程序设计》第九周学习总结

    20145337 <Java程序设计>第九周学习总结 教材学习内容总结 数据库本身是个独立运行的应用程序 撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的增删查找 JDBC可以 ...

  8. 20145337 《Java程序设计》第二周学习总结

    20145337 <Java程序设计>第二周学习总结 教材学习内容总结 Java可分基本类型与类类型: 基本类型分整数(short.int.long).字节(byte).浮点数(float ...

  9. 20145218《Java程序设计》第一周学习总结

    20145218 <Java程序设计>第一周学习总结 教材学习内容总结 今天下午看了Java学习的视频,感觉很是新奇,之前觉得Java学起来是艰难枯燥的,但通过第一章的学习觉得如果自己可以 ...

  10. 《Java程序设计》第九周学习总结

    20145224 <Java程序设计>第九周学习总结 第十六章 整合数据库 JDBC入门 ·数据库本身是个独立运行的应用程序 ·撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的 ...

随机推荐

  1. spring Bean的完整生命周期

    spring 容器中的bean的完整生命周期一共分为十一步完成. 1.bean对象的实例化 2.封装属性,也就是设置properties中的属性值 3.如果bean实现了BeanNameAware,则 ...

  2. UE4 PostProcessVolume笔记

    透镜:Lens Bloom 光溢出 VDirt Mask 光溢出泥土蒙版 Depth of Filed 景深 V Eye Adaptation (Auto-Exposure) 人眼适应 V这个效果有时 ...

  3. 编程入门视频【 Python、PHP、ThinkPHP、Laravel、Mysql、微信小程序】

    免费分享 Python.PHP.ThinkPHP.Laravel.Mysql.微信小程序等学习视频 点击进入搜刮 免费分享 Python.PHP.ThinkPHP.Laravel.Mysql.微信小程 ...

  4. pt-online-schema-change VS oak-online-alter-table【转】

    前言 在上篇文章中提到了MySQL 5.6 Online DDL,如果是MySQL 5.5的版本在DDL方面是要付出代价的,虽然已经有了Fast index Creation,但是在添加字段还是会锁表 ...

  5. Hack Programming

    计算机由ROM(instruction memory).RAM(data memory).CPU组成,其关系如下图 在计算中存在3种寄存器:D.A.M.其中D是data register,A是addr ...

  6. 第一周——数据分析之表示 —— Numpy入门

    数据的维度 从一个数据到一组数据 一个数据:表达一个含义 一组数据:表达一个或者多个含义 维度:一组数据的组织形式 一维数据 由对等关系的有序或者无序数据构成,采用线性方式组织,对应列表.数组和集合等 ...

  7. Git常用的操作

    1.git使用的常规操作     git pull——>编辑——>git add——>git commit——>git push 用git add把文件添加进去,实际上就是把文 ...

  8. Mysql --数据的增删改

    插入数据 INSERT 更新数据 UPDATE 删除数据 DELETE 一. 在mysql管理软件中,可以通过SQL语句中的DML语言来实现数据的操作,包括 1.使用insert实现数据的插入 2.u ...

  9. [转]Ubuntu中apt与apt-get命令的区别

    转载于https://www.sysgeek.cn/apt-vs-apt-get/ Ubuntu 16.04 发布时,一个引人注目的新特性便是 apt 命令的引入.其实早在 2014 年,apt 命令 ...

  10. 分布式Session共享解决方案

    分布式Session解决方案 Author:SimpleWu 分布式Session一致性? 说白了就是服务器集群Session共享的问题 Session的作用? Session 是客户端与服务器通讯会 ...