Java入门9---包装类、正则表达式、Array

包装类

其实就是8种基本类型对应的引用类型。

Java为了实现一切皆对象,为8种基本类型提供了对应的引用类型。

public class Test {
    public static void main(String[] args) {
        int a=10;
        Integer a1=a;//自动装箱

        Integer b=100;
        int b1=b;//自动拆箱
    }
}

包装类的特有功能:

1.包装类的变量默认值可以是null,容错率更高。

int age=null;//报错
Integer age1=null;

2.可以把基本类型的数据转换成字符串类型(用处不大)

Integer a=11;
String s1=a.toString();
String s2= Integer.toString(a);

3.可以把字符串类型的数值转换成真实的数据类型

Integer.parseInt(字符串类型的整数);

Double.parseDouble(字符串类型的浮点数);

Integer.valueOf()和Double.valueOf()也是同样的效果,一般记valueOf就可以了。

String s1="123"; 
System.out.println(Integer.parseInt(s1));


String s2="11.32";
System.out.println(Double.parseDouble(s2));

正则表达式

正则表达式可以用一些规定的字符来制定规则,并用来校验数据格式的合法性。

  

public class Test1 {
    public static void main(String[] args) {
        String qq="1278712";
        boolean a=check(qq);
        //=
        boolean b = qq != null && qq.matches("\\d {6,20}");
    }
    public static boolean check(String qq){
        if (qq!=null || (qq.length()>=6 && qq.length()<=20)){
            for (int i = 0; i < qq.length(); i++) {
                char ch=qq.charAt(i);
                if (ch<'0' || ch>'9'){
                    return false;
                }
            }
        }else {
            return false;
        }

        return true;
    }
}

  Demo1----检验邮箱格式

public class CheckEmail {
    public static void main(String[] args) {
        checkemail("[email protected]");
    }

    private static void checkemail(String s) {
        if (s.matches("\\w{1,30}@[a-zA-Z0-9]{2,20}(\\.[a-zA-Z0-9]{2,20}){1,2}")){
            System.out.println("true");
        }else {

            System.out.println("false");
        }
    }
}

  Demo2----爬取想要的内容

public class RegexDemo {
    public static void main(String[] args) {
        String rs="[email protected],电话18857229217,057023322,400-100-3232,4001003233";
        //定义爬取规则
        String regex="\\w{3,20}@[0-9a-zA-Z]{2,20}(\\.[0-9a-zA-Z]{2,20}){1,2}|"+"1[3-9]\\d{9}|"+"0\\d{2,6}-?\\d{5,20}|"+"400-?\\d{3,9}-?\\d{3,9}";

        //爬取规则编译成匹配对象
        Pattern pattern=Pattern.compile(regex);

        //得到内容匹配对象
        Matcher matcher=pattern.matcher(rs);

        while (matcher.find()){
            String res=matcher.group();
            System.out.println(res);
        }
    }
}

Array 

public class Array {
    public static void main(String[] args) {
        Integer[] age={1,4,44,77,33,21};
        Arrays.sort(age, new Comparator<Integer>() {
            @Override
            public int compare(Integer o1, Integer o2) {
                return 0;
            }
        });
    }
}

如果要重写比较器,必须使用引用类型,使用基本类型则无法重写

猜你喜欢

转载自blog.csdn.net/weixin_46002001/article/details/124947905