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

10 篇文章 0 订阅
6 篇文章 0 订阅

包装类

其实就是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("1096290735@qq.com");
    }

    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="1097223@qq.com,电话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;
            }
        });
    }
}

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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值