20145320 《Java程序设计》第8周学习总结
20145320 《Java程序设计》第8周学习总结
教材学习内容总结
15.1日志
java.util.logging
包提供了日志功能相关类与接口,不必额外配置日志组件,就可以在标准java平台使用是其好处。使用日志的起点是Logger
类,要取得Logger
实例,必须使用Logger
的静态方法getLogger()
- 调用
getLogger()
时,必须指定Logger
实例所属名称空间,名称空间以“.”作为层级区分,名称空间层级相同的Logger
,其父Logger
组态相同。 - 如果客户端调用了
Logger
实例的log()
方法,首先会依Level
过滤信息,再看看Logger
有无设定Filter
接口的实例。如果有其isLoggalbe()
返回true
,才会调用Handler
实例的public()
方法,Handler
也可以设定自己的Filter
实例,如果有且isLoggalbe()
返回true
,就调用Formatter
实例的format()
方法格式化信息,最后才调用输出对象将格式化后的信息输出。目前Logger
的Handler
处理完,还会传播给父Logger
的所有Handler
处理(在通过父Logger
层级的情况下) - 可以通过
logging.properties
来设定Logger
组态,启动JVM时,指定java.util.logging.config.file
系统属性为.properties
15.2国际化基础
- 应用程序根据不同地区用户,呈现不同语言、日期格式等称为本地化,如果应用程序设计时,可在不修改应用程序情况下,根据不同用户直接采用不同语言、日期格式等,这样的设计考虑称为国际化,简称il8n
- 国际化的三个重要概念是地区信息、资源包与基础名称。地区信息的对应类是
Locale
,ResourBundle
对象是JVM中资源包的代表对象。代表同一组信息但不同地区的各个资源包会共享相同的基础名称,使用ResourBundle
的getBundle()
时指定的名称,就是在指定基础名称。 - 使用
ResourBundle
时,如何根据基础名称取得对应的信息文档:
1.使用指定的Locale
对象取得信息文档
2.使用Locale.getDefault()
对象取得信息文档
3.使用基础名称取得信息文档
- 可以使用Date来取得完整日期时间,课单纯使用
toString()
取得日期文字描述,或使用DateFormat
格式化日期。若查看Date的API文件,会发现许多方法都不再建议使用,而建议改用Calendar
的相关方法取代。
15.3规则表示式
- 规则表示式主要用于字符、字符串格式比较,
java.util.regex.Pattern
实例是规则表示式在JVM中的代表对象,必须通过Pattern
的静态方法compile()
来取得,可以使用matcher()
方法指定要比较的字符串,这会返回java.util.regex.Matcher
实例,表示对指定字符串的比较器。
教材学习中的问题和解决过程
书本488页的ReplaceDemo.java我自己改进了一点,真有意思2333
String[] change={".*Like",".*?Like",".*+Like"};
for(String regex :change){
System.out.println("ILikeJavaILikeJava".replaceAll(regex,"Do not Like"));
}
代码调试中的问题和解决过程
书本483页,根据某个字符切割,我自己也写了一段代码
for(String token:a.split("ed")){
System.out.println(token);
}
这里是按照ed字符切割,然后自己输入了一段字符
发现我的一个单词也被切割了!
然后往后翻看到可以用\b
标记出单词边界,然后修改了代码
for(String token:a.split("\\\bed\\\b"))
{
System.out.println(token);
}
没想到
对比书上发现每个单词间会以空格相隔开,然后我重新写了一遍
我的Like Java呢?难道程序都不让我Like Java?
难道自己输入的字符不能分割?我又修改了代码
for(String token:"I ed Like ed Java".split("\\bed\\b"))
{
System.out.println(token);
}
这次我把我要写的东西直接放在上面了,结果
出现了!这是为什么!?
代码截图如下(第一次使用git....)
学习进度条
代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
---|---|---|---|---|
目标 | 5000行 | 30篇 | 400小时 | |
第一周 | 200/200 | 1/1 | 20/20 | |
第二周 | 300/500 | 1/2 | 18/38 | |
第三周 | 500/1000 | 1/3 | 22/60 | |
第四周 | 500/1500 | 1/4 | 30/90 | |
第五周 | 400/1900 | 1/5 | 20/110 | |
第六周 | 400/2300 | 2/7 | 20/130 | |
第七周 | 300/2600 | 2/9 | 15/145 | |
第八周 | 364/2964 | 2/11 | 20/165 |
参考资料
20145320 《Java程序设计》第8周学习总结的更多相关文章
- 20145213《Java程序设计》第九周学习总结
20145213<Java程序设计>第九周学习总结 教材学习总结 "五一"假期过得太快,就像龙卷风.没有一点点防备,就与Java博客撞个满怀.在这个普天同庆的节日里,根 ...
- 20145213《Java程序设计》第二周学习总结
20145213<Java程序设计>第二周学习总结 教材学习内容总结 本周娄老师给的任务是学习教材的第三章--基础语法.其实我觉得还蛮轻松的,因为在翻开厚重的书本,一股熟悉的气息扑面而来, ...
- 20145213《Java程序设计》第一周学习总结
20145213<Java程序设计>第一周学习总结 教材学习内容总结 期待了一个寒假,终于见识到了神秘的娄老师和他的Java课.虽说算不上金风玉露一相逢,没有胜却人间无数也是情理之中,但娄 ...
- 21045308刘昊阳 《Java程序设计》第九周学习总结
21045308刘昊阳 <Java程序设计>第九周学习总结 教材学习内容总结 第16章 整合数据库 16.1 JDBC入门 16.1.1 JDBC简介 数据库本身是个独立运行的应用程序 撰 ...
- 20145330孙文馨 《Java程序设计》第一周学习总结
20145330孙文馨 <Java程序设计>第一周学习总结 教材学习内容总结 刚开始拿到这么厚一本书说没有压力是不可能的,开始从头看觉得很陌生进入不了状态,就稍微会有一点焦虑的感觉.于是就 ...
- 20145337 《Java程序设计》第九周学习总结
20145337 <Java程序设计>第九周学习总结 教材学习内容总结 数据库本身是个独立运行的应用程序 撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的增删查找 JDBC可以 ...
- 20145337 《Java程序设计》第二周学习总结
20145337 <Java程序设计>第二周学习总结 教材学习内容总结 Java可分基本类型与类类型: 基本类型分整数(short.int.long).字节(byte).浮点数(float ...
- 20145218《Java程序设计》第一周学习总结
20145218 <Java程序设计>第一周学习总结 教材学习内容总结 今天下午看了Java学习的视频,感觉很是新奇,之前觉得Java学起来是艰难枯燥的,但通过第一章的学习觉得如果自己可以 ...
- 《Java程序设计》第九周学习总结
20145224 <Java程序设计>第九周学习总结 第十六章 整合数据库 JDBC入门 ·数据库本身是个独立运行的应用程序 ·撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的 ...
- 《Java程序设计》第二周学习总结
20145224陈颢文<Java程序设计>第二周学习总结 教材学习内容总结 一.类型.变量与运算符 1.类型 整数: 可细分为为short整数(占2字节),int整数(占4字节),long ...
随机推荐
- AppStore上传条例
1. 条款和条件1.1 为App Store开发程序,开发者必须遵守 Program License Agreement (PLA).人机交互指南(HIG)以及开发者和苹果签订的任何协议和合同.以下规 ...
- CF #371 (Div. 2) C、map标记
1.CF #371 (Div. 2) C. Sonya and Queries map应用,也可用trie 2.总结:一开始直接用数组遍历,果断T了一发 题意:t个数,奇变1,偶变0,然后与问的 ...
- gcc 版本降级
由于刚刚装了ubuntu 16.04,该版本gcc版本为5.4.0太高,很多软件不支持,所以要降版本,可以直接看(三)解决 一.gcc源代码网站 ftp://mirrors.kernel.org/gn ...
- C# 委托和Lambda---基础
[委托]是一个类可以把一个方法当作另一个方法的参数使用. 声明委托:delegate string 委托名(参数列表);//跟定义方法一样,只是没有方法体,必须使用关键字delegate使用委托的函数 ...
- python 之redis
redis是一个key-value存储系统,与memcached类似,它支持存储到value类型相对更多,包括string(字符串),list(列表),set(集合),zset(sorted set ...
- js文字无缝滚动
<div id=demo style="overflow:hidden; width:128px; height:300px;"> <div id=demo1&g ...
- How to get SQLite work on windows phone 8
1.Install SQLite for Windows Phone SDKC:\Program Files (x86)\Microsoft SDKs\Windows Phone\v8.0\Exten ...
- Hibernate---单条记录的增删改查
package com.hanqi.test; import static org.junit.Assert.*; import java.util.Date; import org.hibernat ...
- Hadoop.2.x_WebUV示例
一.网站基本指标(即针对于网站用户行为而产生的日志中进行统计分析) 1. PV:网页浏览量(Page View页面浏览次数,只要进入该网页就产生一条记录,不限IP,统计点每天(较多)/每周/每月/.. ...
- 使用ftp软件上传下载php文件时换行丢失bug
正 文: 在使用ftp软件上传下载php源文件时,我们偶尔会发现在本地windows下notepad++编辑器写好的php文件,在使用ftp上传到linux服务器后,php文件的换行符全部丢失了, ...