zoukankan      html  css  js  c++  java
  • 《Java程序设计》第7周学习总结

    20175221   《Java程序设计》第7周学习总结

    教材学习内容总结

    第八章:常用实用类

    String类:

    • String对象

    • 常量对象

    • 创建对象

    • 并置字符串:使用“+”对String对象进行并置运算,首尾相接得到一个新的String对象

    引用String类的常用方法:

    • 1.public int length( ) :获取一个String对象的字符序列长度
    • 2.public boolean equals(String s):比较当前String对象与参数s的字符序列是否相同
    • 3.public boolean startsWith(String s):public boolean endsWith(Sting s): 判断当前字符序列的前缀或后缀,与s指定的字符序列是否相同
    • 4.public boolean contains(String s):判断当前字符序列是否包含参数s的字符序列
    • 5.public int indexOf (string s):从当前String对象的字符序列的0索引位置开始检索,至首次出现s的字符序列位置,存在则返回该位置,不存在则返回-1
    • 6.public int lastIndexOf(String s):从当前String对象的字符序列的0索引位置开始检索,至最后一次出现s的字符序列位置,存在则返回该位置,不存在则返回-1
    • 7.public String trim():得到当前String对象去掉前后空格的新字符序列,字符中间空格无法去掉

    正则表达式:

    • 正则表达式是一个String对象的字符序列,该字符序列中含有具有特殊意义的字符,这些特殊字符称作正则表达式的元字符
    • 正则表达式的元字符
    • StringTokenizer类

    • StringTokenizer有两个构造方法:

    • 1.StringTokenizer(String s):使用默认的分隔标记,即空格、回车、换行、Tab
    • 2. StringTokenizer(String s,String delim):使用delim中字符的任意排列作为分隔标记
    • Scanner类

    • Scanner对象可以调用正则表达式作为分隔标记,解析程序需要的字符序列中的数据
    • 构造对象:Scanner sc=new Scanner(String s)
    • 确定分隔标记:sc.useDelimiter(正则表达式)
    • StringBuffer类

    • StringBuffer有三个构造方法:
    • StringBuffer():分配初始容量16个字符,可以自动增加
    • StringBuffer(int size):初始容量为size,恶意自动增加
    • StringBuffer(String s):初始容量为s的字符序列长度+16
    • StringBuffer类的对象的实体的存储空间可以自动的改变大小,便于存放

    • Date类与Calendar类

    • Date类:Date nowTime=new Date()--获取当前时间

    • Calendar类:
    • 初始化:Calendar calendar = new Calendar.getInstance()
    • 日期的格式化

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

    • Math类,BigInter类和Random类

    • Math类用于静态方法、常量E和PI

    • BigInter类用于处理特别大的整数

    • Random类产生随机数

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

    • 问题1:
    • java中的Scanner类和C语言中的scanf有什么区别吗
    • 问题1解决方案:

    • 查阅资料知:

    • 1.java是面向对象的语言

    • 它没有像C语言中的scanf()函数,但是它的类库中有含有scanf功能的函数

    • 2.java.util包下有Scanner类

    • Scanner类的功能与scanf类似

    • 3.Scanner类的使用

    • Scanner使用next()方法接收输入的任何字符串

    • 以回车换行符为结束标志

    • Scanner接收的字符串需要经过类型转换变成你想要的类型

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

    • 问题1:编译报错:时间进行语法分析时已到达文件结尾

    • 问题1解决方案:

    • 查资料知原因:
    • 分析已达到文件结尾一般是括号没有闭合,或者缺少了分号
    • 问题2:对Date now = new Date()的一些思考:
    • 问题2解决方案:
    • 代码如下:
    • package collection.exercise;
      
      import java.util.Date;
      
      import java.text.SimpleDateFormat;
      
      import java.text.ParseException;
      
      public class Test1 {
      
          public static void main(String[] args) throws ParseException {
      
      // TODO Auto-generated method stub
      
              //使用Format()方法将日期转换为指定的格式
      
              SimpleDateFormat df = new SimpleDateFormat("yyyy年MM月dd日  hh时mm分ss秒");
      
              SimpleDateFormat df1 = new SimpleDateFormat("yyyy/MM/dd/  hh/mm/ss");
      
              SimpleDateFormat df2 = new SimpleDateFormat("yyyy-MM-dd  hh-mm-ss");
      
      //创建对象,获取当前日期
      
              Date now = new Date();
      
              String date = df.format(now);
      
              String date1 = df1.format(now);
      
              String date2 = df2.format(now);
      
              System.out.println(date);
      
              System.out.println(date1);
      
              System.out.println(date2);
      
      //使用parse()方法将文本转换为日期
      
              Date a = df.parse(date);
      
              Date b = df1.parse(date1);
      
              Date c = df2.parse(date2);
      
              System.out.println(a);
      
              System.out.println(b);
      
              System.out.println(c);
          }
      }
    • 运行结果如下:

    • 思考:

    • 对当前时间的输出格式,可以在创建对象的时候一同进行编辑。但是用parse获得的时间,不能改变其输出的格式

    代码托管(https://gitee.com/zxjacdl/zxj175221/tree/master/eight)

    statistics.sh脚本的运行结果截图

    上周考试错题总结 

    • 上周考试无错题

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

    • 第八章的常用实用类真的很有用,课下应该多多练习以熟记

    学习进度条(四月份继三月份)

     代码行数(新增/累积)博客量(新增/累积)学习时间(新增/累积)重要成长
    目标   5000行 8篇 100小时  
    第一周 13/13 1/1 12/12  
    第二周     309/322 1/2 13/25  
    第三周     614/923 1/3 15/40  
    第四周       384/1379 1/4 12/52  
    第五周       565/1954 1/5 12/64  
    第六周     1080/3034 1/6 15/79  
    第七周       671/3705 1/7 12/91  

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

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

    • 计划学习时间:12

    • 实际学习时间:12

    • 改进情况:继续保持稳定前进

    (有空多看看现代软件工程 课件软件工程师能力自我评价表)

    参考资料

    • Java学习笔记(第8版)

    • 《Java学习笔记(第8版)》学习指导

    • [ Java 2 实用教程(第5版)]

    • 正则表达式的元字符(https://www.cnblogs.com/self-hard/p/10232281.html)
    • C语言中的scanf在java中应该怎么表达,Scanner类(https://www.cnblogs.com/alsf/p/6231874.html)
    • java语法错误,进行分析时已经到达文件结尾(https://zhidao.baidu.com/question/680373923976896932.html)
     
     
     
     
  • 相关阅读:
    设计模式之工厂模式-抽象工厂(02)
    1036 跟奥巴马一起编程 (15 分)
    1034 有理数四则运算 (20 分)
    1033 旧键盘打字 (20 分)
    1031 查验身份证 (15 分)
    大学排名定向爬虫
    1030 完美数列 (25 分)二分
    1029 旧键盘 (20 分)
    1028 人口普查 (20 分)
    1026 程序运行时间 (15 分)四舍五入
  • 原文地址:https://www.cnblogs.com/zxja/p/10672041.html
Copyright © 2011-2022 走看看