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. js中的简单数据类型和复杂数据类型的存储

    基本类型存储的是值而复杂数据类型也叫引用类型存储的是对象的地址如0x00001而在栈中存的是变量数值和函数参数 堆中存的是对象和数组 堆栈空间分配 栈(操作系统):由操作系统自动分配释放 ,存放函数的 ...

  2. ThetaSome_ThetaAll子查询

    基本语法 表达式 θ some(子查询) 表达式 θ all (子查询) 语法中,θ是比较运算符 <,>,>=,<=,=,<> 如果表达式的值至少与子查询的结果的某 ...

  3. JS中小数相加相减时出现很长的小数点的解决方式

    1.问题: 平时写的代码中会出现这种情况,parseFloat(11.3-10.1) 运行的结果依然是1.200000000000001 代码示例: var arr = [0.0111,11.002, ...

  4. 20155312 张竞予 Exp4 恶意代码分析

    Exp4 恶意代码分析 目录 基础问题回答 (1)如果在工作中怀疑一台主机上有恶意代码,但只是猜想,所有想监控下系统一天天的到底在干些什么.请设计下你想监控的操作有哪些,用什么方法来监控. (2)如果 ...

  5. Xpath初了解

    如下一段html: <html> <body> <form id="loginForm"> <input name="usern ...

  6. Gmagick convert SVG to PNG with transparent/opacity background

    1 前言 在Ubuntu18.04环境下,用gographics/gmagick API使用了以下代码未有效果 pw := gmagick.NewPixelWand() pw.SetOpacity(1 ...

  7. php中echo、print、print_r、var_dump、var_export区别

    (1) print和echo是语言结构,echo输出多个值,多个值之间用逗号分隔,无返回值:print只能输出一个值,有返回值.echo和print输出整型和字符串,没法打印布尔型,如果true,打印 ...

  8. 5、Filebeat工作原理

    Filebeat工作原理 Filebeat由两个主要组件组成:inputs和harvesters. 这些组件协同工作来查看最新文件内容并将事件数据发送到指定的输出.(注意与之前版本的不同,之前版本是p ...

  9. 关于saltstack

    配置Saltstack master 服务器 master服务器:saltstack.master  172.18.1.103 minion客户端:minion01              172. ...

  10. 查看CentOS版本信息

    今天小编将给大家详细讲解查看CentOS版本信息的命令. (一) 查看已经安装的CentOS版本信息 1.cat /etc/issue 查看版本 cat  缩写concatenate  cat命令可以 ...