教材学习内容总结

第八章 常用实用类

String类

  • 构造String对象:常量对象;String对象;引用String常量。
  • 字符串的并置:String对象使用“+”进行并置运算,即首尾相接。
  • 字符串与基本数据的相互转化:public static String valueOf(byte/int/long/float/double n)将上述类型转换为String对象。
  • 对象的字符串表示:Object类有一个public String toString()方法,一个对象通过调用该方法可以获得该对象的字符串表示。返回的形式为:创建对象的类的名字@对象的引用的字符串表示。
  • 字符串与字符数组、字节数组。
  1. 字符串与字符数组举例说明:
String s="1945年8月15日是抗战胜利日";
char []a=new char[4];
s.getChars(11,15,a,0);//数组a的单元依次放的字符是抗 战 胜 利 char []c;
c="睡觉".toCharArray();//数组c的单元依次放的字符是 睡 觉
  1. 字符串与字节数组:String类的构造方法String (byte[],int offset,int length),从数组起始位置offset开始取length个字节,构造一个String对象。
  2. 字符的加密算法:若加密算法为做加法运算,则解密算法为减法运算。
  • 正则表达式及字符串的替换与分解
  1. 正则表达式是一个String对象的字符序列,该字符序列中含有具有特殊意义的字符,这些特殊字符称为正则表达式的元字符。
  2. 元字符如图:

  1. 限定符如图:

  1. 字符串的替换:public String replaceAll(String regex,String replacement),调用方法返回一个新的String对象,新的String对象的字符序列是把当前对象字符序列中所有和参数regex相匹配的子字符序列,用参数replacament的字符序列替换后得到的新的字符序列,但不影响当前String对象的字符序列。
  2. 字符序列的分解:public String[]split(String regex):String对象调用该方法时,使用参数指定的正则表达式regex作为分隔标记分解出当前String对象的字符序列中的单词,并将分解出的单词存放在String数组中,如:
String str="1949年10月1日建国";
String regex="\\D+";//匹配任何非数字字符序列
String digitWord[]=str.split(regex);//digitWord[]存放的为:1949 10 1

StringTokenizer类

  • 用于将字符序列分解成可被独立使用的单词时,使用该对象。StringTokenizer有两个构造方法:
  1. StringTokenizer(String s),使用默认的分隔标记,即空格符,换行符,回车符,Tab符等等。
  2. StringTokenizer(String s,String delim):参数delim的字符序列的字符的任意排列被作为标记符。
  3. 具体使用步骤:

    (1)设置分隔标记regex。String s=(正则表达式);

    (2)replaceAll方法的调用。s=s.replaceAll(regex,"#");

    (3)使用StringTokenizer创建分析器。StringTokenizer fenxi=new StringTokenizer(s,"#");

    (4)获取分线器中计数变量的值。int amount=fenxi.countTokens();

    (5)取出分析器中的String单元,使用数组或其他方式存储。

    double a[]=new double [amount]; String m; for (int i=0;i<n;i++) { m=fenxi.nextToken(); a[i]=Double.parseDouble(m); }
    while(fenxi.hasMoreTokens()) { String item = fenxi.nextToken(); double price = Double.parseDouble(item); }

    Scanner类

  • Scanner对象可以调用正则表达式作为分隔标记,即让Scanner对象在解析操作时,把与正则表达式匹配的字符序列作为分隔标记。默认使用空白字符作为分隔标记来解析String对象的字符序列的单词。
Scanner sc=new Scanner(String s);
sc.useDelimiter(正则表达式);

优先使用StringTokenize类,进行String对象的分解

StringBuffer类

  • StringBuffer类的对象的实体的存储空间可以自动的改变大小,便于存放。StringBuffer s=new StringBuffer("我喜欢"); s.append("Java")
  • StringBuffer有三个构造方法。

Date类与Calendar类

  • Date类:Date nowTime=new Date();:获取当前时间。
  • 带参数的构造方法。
  • Calendar类学习参考Dome15

    日期的格式化

  • 使用String类调用format方法对日期格式化:format(格式化模式,日期列表);

    Math类、BigInteger类和Random类

  • Math类常用方法:

  1. public static long abs(double a):返回绝对值。
  2. public static double max/min(double a,double b):返回两个数中最大/小的数。
  3. public static double random():产生一个0~1之间的随机数([0,1))。
  4. public static double sqrt(double a):返回a的平方根。
  • BigInteger类:处理特别大的整数。常用方法暂时不用。
  • Random类:生成随机数。

    数字格式化

  • 参照C语言。

学习中的问题和解决过程

  • 问题1:在例题8.5中,代码没有敲错,但是编译老是不通过,显示

  • 问题1解决方案:这个例题应用了java.util包中的Date类,但是在例题中没有体现,在主类前面加上import java.util.*;解决了问题。

代码托管

学习进度条

  代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时  
第一周 31/31 1/1 8/8  
第二周 250/281 1/2 8/16  
第三周 586/867 1/3 15/31  
第四周 450/1317 1/4 9/40

第五周 251/1568 2/6 5/45  
 第六周  972/2540  1/7  10/55  
第七周 467/3007 1/8 10/65  

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

  1. 201521123027 <java程序设计>第七周学习总结

    1.本周学习总结 2.书面作业 Q1.ArrayList代码分析 1.1 解释ArrayList的contains源代码 答: 源代码: //contains()方法 public boolean c ...

  2. 201871010106-丁宣元 《面向对象程序设计(java)》第七周学习总结

    201871010106-丁宣元 <面向对象程序设计(java)>第七周学习总结 正文开头: 项目 内容 这个作业属于哪个课程 https://home.cnblogs.com/u/nwn ...

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

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

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

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

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

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

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

    20145236 <Java程序设计>第九周学习总结 教材学习内容总结 第十六章 整合数据库 JDBC简介 1.JDBC是java联机数据库的标准规范.它定义了一组标准类与接口,标准API ...

  7. 20155304田宜楠2006-2007-2 《Java程序设计》第一周学习总结

    20155304田宜楠2006-2007-2 <Java程序设计>第一周学习总结 教材学习内容总结 - 浏览教材,根据自己的理解每章提出一个问题 第一章 除了书上提到的开发工具还有什么适合 ...

  8. 20155303 2016-2017-2 《Java程序设计》第二周学习总结

    20155303 2016-2017-2 <Java程序设计>第二周学习总结 教材学习内容总结 『注意』 "//"为单行批注符: "/*"与&quo ...

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

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

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

    20175209 <Java程序设计>第九周学习总结 一.教材知识点总结 有关数据库下载中存在可能出现的问题已经在博客<数据库安装和使用过程中出现的一些问题>给出了相应的解决办 ...

随机推荐

  1. centos用YUM装mysql笔记

    安装的方法,参考:https://blog.csdn.net/jeffleo/article/details/53559712 注意事项: 1.上面教程中,关于设置密码的地方,SQL语句有误,单引号要 ...

  2. c#异步学习笔记

    如下代码.只需要异步的处理一个数据,不需要等处理完成后,进行后继的操作.可以不用Async来修饰方法 static void Main(string[] args) { Test(); Console ...

  3. ggplot的boxplot添加显著性 | Add P-values and Significance Levels to ggplots | 方差分析

    参考:Add P-values and Significance Levels toggplots 多组比较,挑选感兴趣的显示显著性. data("ToothGrowth") he ...

  4. idea在本地调试,spark创建hiveContext的时候报错

    spark版本:1.6.1 scala版本:2.10 问题呢场景: 在idea调试本地程序的时候创建hiveContext报错,上午的时候是没有这个问题的,下午在项目中写了一个小deamon,出现了而 ...

  5. Linux之nginx入门

    nginx入门 详见可参考:https://www.cnblogs.com/tiger666/p/10239307.html?tdsourcetag=s_pctim_aiomsg 1. 常用的WEB框 ...

  6. Java使用Redis--jedis

    参考:菜鸟教程 http://www.runoob.com/redis/redis-java.html 1.Java 使用 Redis 开始在 Java 中使用 Redis 前, 我们需要确保已经安装 ...

  7. Linux 安装 Rabbit MQ

    安装socat yum -y install socat 下载erlang软件包,本文使用erlang-19.0.4版本,下面给出下载链接 wget http://www.rabbitmq.com/r ...

  8. day2作业

    购物车(两个程序)用户入口1商品信息存在文件里2已购商品,余额记录商家入口2可以添加商品,修改商品价格

  9. leetcode 78,236,300

    ---恢复内容开始--- 2018.3.16目前已刷27题,打卡记录有意思的题目. leetcode78 subsets 思路1:DFS遍历子集,每遇到一个数就把该数加上原来的子集变成新的子集. cl ...

  10. ckeditor文本对齐方式添加,图片上传

    最近用的AdminBSBMaterialDesign-master模板,里边用到了ckeditor编辑器 但发现里边没有基本的文本对齐方式,找了好一会,好多方法都不管用,最后在config.js中添加 ...