第七周Java学习总结

一.知识点摘要

1.String类

  • 获取字符串某一位置的字符 public char charAt(int index)
  • 获取字符串的子串
    public String substring(int beginIndex) //该方法从beginIndex位置起, //从当前字符串中取出剩余的字符作为一个新的字符串返回。
    public String substring(int beginIndex, intendIndex)//该方法从beginIndex位置起,从当前字符串中//取出到endIndex-1位置的字符作为一个新的字符串返回

2.StringTokenizer类

StringTokenizer是一个用来分隔String的应用类

  • 构造函数
    public StringTokenizer(String str);public StringTokenizer(String str, String delim); public StringTokenizer(String str, String delim, boolean returnDelims)
  • 核心方法
    public boolean hasMoreTokens();public String nextToken();public String nextToken(String delim);public int countTokens()
  • 多余方法
    public boolean hasMoreElements();public boolean hasMoreElements()
    这个类实现了Enumeration接口

3.StringBuffer类

  • 添加 append(): append(可以添加多种类型 包括基本数据类型); 例如:String、int、double、Boolean等,都可以转变成字符串表示形式。

  • 插入insert(): setCharAt(int index , char ch)方法 ,将索引处的字符修改为ch.

  • 删除delete( , ): 移除此序列的字符串中的字符,该子字符串是从指定的索引start处开始,一直到索引end - 1处,如果end - 1超出最大索引范围则一直到序列尾部。

  • 替换

    private static void fun5() {
    StringBuffer sb = new StringBuffer();
    sb.append("wukong");
    sb.replace(0, 4,"tian");
    System.out.println(sb);
    }

  • 反转
    把字符串反转 ;字符串 转到 StringBuffer ,StringBuffer转字符串

     private static void fun7() {
         String string = "wukong";
           //字符串--->字符串缓冲区
        StringBuffer sb = new StringBuffer(string);
         sb.reverse();
            //反转后转回字符串
          string = sb.toString();
        System.out.println(string);
      }
    

4.Date类和Calender类

Date类是唯一的一个代表时间的类
使用Date类代表当前系统时间
由于Calendar类是抽象类,且Calendar类的构造方法是protected的,所以无法使用Calendar类的构造方法来创建对象。

5.Math类,BigInteger类,Random类

Math类

Math类在java.lang包中.
常用的方法有
Math.abs(double x)返回x的绝对值.
Math.max(double x,double y)返回x和y的较大者.
Math.pow(double x,double y)返回x的y次幂.
Math.sqrt(double x)返回x的平方根.
Math.log(double x)返回x的自然对数.
Math.asin(double x)返回x的反正弦值.
Math.random()返回0-1之间的随机数(不包含端点).
例如
int x = (int)(Math.random()*b)+a可以获取[a,b]之间的随机整数.

BigInteger类

BigInteger类在java.math包中.

  • ①创建一个BigInteger类对象的方法如下
    BigInteger bigInteger = new BigInteger(Strings);
    其中s为数字字符串,如果s中含有非数字字符,则会出现异常.
  • ②常用方法如下
    令bigInteger为一个BigInteger类对象
  • a. 加 bigInteger.add(BigInteger bi)方法:bigInteger与bi相加.
  • b. 减 bigInteger.subtract(BigInteger bi)方法:bigInteger减去bi.
  • c. 乘 bigInteger.multiply(BigInteger bi)方法:bigInteger与bi相乘.
  • d. 除 bigInteger.divide(BigInteger bi)方法:bigInteger除以bi.
  • e. 取余 bigInteger.remainder(BigInteger bi)方法:bigInteger除以bi的余数.
  • f. 绝对值 bigInteger.abs()方法:bigInteger的绝对值.
  • g. 乘方 bigInteger.pow(int n)方法:bigInteger的n次方
  • h. 字符串bigInteger.toString(int p)方法:将bigInteger转化为p进制,p可以缺省,缺省值为10.

Random类

用法如下

  • ①获取[a,b]之间随机整数

    Random r = new Random();
    int x = r.nextInt(b+a+1)+a;
    如int x = r.nextInt(21)-10;可以获取[-10,10]之间的随机整数.

  • ②随机获取true/false
    boolean b = r.nextBoolean();即可获取一个随机布尔值.

6.Class类和Console类

   Class 类是在Java语言中定义一个特定类的实现。一个类的定义包含成员变量,成员方法,还有这个类实现的接口,以及这个类的父类。Class类的对象用于表示当前运行的 Java 应用程序中的类和接口。 比如:每个数组均属于一个 Class 类对象,所有具有相同元素类型和维数的数组共享一个Class 对象。基本的 Java 类型(boolean, byte, char, short,int, long, float 和 double) 和 void 类型也可表示为 Class 对象。

由于Scanner类输入是可见的,故Scanner类不适用于从控制台读取密码。所以用Console类来解决此问题。

代码托管

本周学习感想

应该反省下自己最近的学习心态,不能总这样疲于应付,最后收获的只是满头大汗而已。

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第一周 35/35 0/0 16/16
第二周 321/356 1/1 20/36
第三周 819/1175 2/3 20/56
第四周 836/2011 1/4 14/70
第五周 474/2485 2/6 16/86
第六周 1780/4265 3/9 24/110
第七周 208/4473 1/10 10/120
posted @ 2019-04-14 22:54  20175105鑫浩  阅读(102)  评论(0编辑  收藏  举报
}