Pattern类和Matcher类。java.util.regex

  作用:正则匹配

  使用方法:

    1:获取Pattern对象, Patterm pattern = Pattern.compile(“匹配模式”);

        eg:String regex = “good”;

          Pattern pattern = Pattern.compile(regex);

    2:获取Matcher对象 ,Matcher matcher = pattern.matcher(input);

        eg:Matcher matcher = pattern.matcher("i a good boy");

    这个时候可以利用Marcher对象进行操作;

        Matcher的方法:

          find():在input(i a good boy)寻找第一个与regex(good)匹配的子序列,成功返回true,失败返回false,如果再次调用find()函数,则从上一次匹配成功 的位置开始寻找下一个子序列,返回true时可以使用start()方法返回匹配子序列的起始位置,end()方法返回匹配子序列的结束位置;

            eg:matcher.find() //3;matcher.end();//7

          matchers():返回true false 判断input 是否和rregex完全匹配;

          find(int index):同find() 从index下标位置开始寻找匹配子序列;

          replaceFirst(string str):用str代替匹配到的第一个子序列,返回一个string 原来的input不变;

          replaceAll(string str): 用str 代替全部匹配到的子序列,返回一个String 原来的input不变;

Console类

    方法:Console.readPassword(); 在控制台读取密码,此时的控制台不能显示明文没密码,隐藏;返回一个char[] 数组

Class类:

    用于反射,动态生成对象

    动态生成对象:

      1:获取Class对象 ;Class.forName(String className);注意className需要包括包名,返回一个Class 对象;‘

        eg:Class c = Class(myClassName);

      2:创建实例

        eg:Object myclass = c.newInstance();

String类:

    创建对象方法:

      1:常量对象:String str = “”;这样创建的对象存放在常量池里面,每次赋值都需要创建新的常量,常量池里面的值在运行时不允许改变;

            el:String a = “a”; //首先查看常量池里面是否有“a” ,没有添加到常量池,有就直接指向它;

              String b=“a”;//b直接指向常量池里面的“a”;

              a = "c";//创建一个“c”在常量池里面,但是b的值还是“a”

      2:String对象 (new):String str = new String(“a”);

      3:注意字符串的并置:

        eg:String a=“a”,b="b"; String c=a+b;==>这里的c=a+b //ab  相当于String c = new String("ab");当右边有变量参与运算时,相当于new

    常用方法:boolean equals(String s);比较两个字符串的值

          startsWith(string s)查看s是否为原字符串的 前缀;

          compareTo(string s) 按字典序来比较,大于返回1 ,等于返回0;小于返回-1

          contains(string s)判断是否包含字符串s;返回值是boolean

          indexOf(String s) 返回s在字符串的下标值;

          lastIndexOf(string s)返回最后一个匹配s的下标值;

          substring(int start ,int end)从下标start开始到end结束 获取字符串;