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. Codeforces 544E K Balanced Teams (DP)

    题目: You are a coach at your local university. There are nn students under your supervision, the prog ...

  2. 求逆序对常用的两种算法 ----归并排 & 树状数组

    网上看了一些归并排求逆序对的文章,又看了一些树状数组的,觉得自己也写一篇试试看吧,然后本文大体也就讲个思路(没有例题),但是还是会有个程序框架的 好了下面是正文 归并排求逆序对 树状数组求逆序对 一. ...

  3. 图形验证码 tesserocr pillow

    利用tesserocr和pil生成图形验证码 import tesserocr from PIL import Image image = Image.open('222.jpg') image = ...

  4. Python-web应用 +HTTP协议 +web框架

    web架构 # web应用 架构# C/S 架构 | B/S 架构# client server: 客户端服务器架构,C++# browser server:浏览器服务器架构,Java.Python ...

  5. liunx 下WebBench 安装与压力测试

    安装: wget http://blog.zyan.cc/soft/linux/webbench/webbench-1.5.tar.gz tar zxvf webbench-1.5.tar.gz cd ...

  6. VS2010 开发 VB6.0 activeX控件 dll

    项目源码 https://download.csdn.net/download/csdn_z_s/10427764 开发环境 操作系统: win7 64位 旗舰版 Java语言开发环境:  Eclip ...

  7. spring boot 添加拦截器的简单实例(springBoot 2.x版本,添加拦截器,静态资源不可访问解决方法)

    spring中拦截器主要分两种,一个是HandlerInterceptor,一个是MethodInterceptor 一.HandlerInterceptor HandlerInterceptor是s ...

  8. ansible的lookup

    lookup路径: /usr/lib/python2.7/site-packages/ansible/plugins/lookup 所有的lookup插件列表cartesian.py dnstxt.p ...

  9. mq_receive

    NAME mq_receive - 从消息队列中获取消息 (REALTIME) SYNOPSIS #include <mqueue.h> ssize_t mq_receive(mqd_t ...

  10. Python实现字符串反转的几种方法

    面试遇到的一个特无聊的问题--- 要求:在Python环境下用尽可能多的方法反转字符串,例如将s = "abcdef"反转成 "fedcba" 第一种:使用字符 ...