常用类的介绍

1. 基本数据类型包装类

       Java是一种纯面向对象语言,但是java中有8种基本数据类型,破坏了java为纯面向对象的特征。为了承诺在java中一切皆对象,java又给每种基本数据类型分别匹配了一个类,这个类我们称之为包装类。

       注意:每个基本数据类型都有一个与之匹配的包装类。

1.1 八大基本数据类型的包装类

 

1.2 包装类中的常用方法

    装箱:把基本数据类型包装为对应的包装类对象

    1、 Integer i1 = new Integer(10); // 利用构造方法

    2、 Integer i2 = Integer.valueOf(10); //利用包装类中的静态方法

    拆箱:把包装类对象转换为对应的基本数据类型。

    int i3= i1.intValue(); //返回包装类对象i1对应的基本数据

1.3 自动装箱和自动拆箱

    1、 自动装箱:可以直接把一个基本数据类型赋值给包装类

    例如: Double d = 3.3; //自动装箱操作

    2、 自动拆箱:可以直接把一个包装类对象,赋值给基本类型

    例如:int a = new Integer(3); //自动拆箱。

2. 字符串的常用方法

2.1字符串转字符数组、统计长度、从头尾查找下标值、包含、截取、根据下标返回值

System.out.println("========常用方法================");
        //1.构造方法,数组转字符串
        char[] chars = {'a','b','c','d','e'};
        String str1 = new String(chars);
        System.out.println(str1);
        //(字符数组,起止下标,个数)
        //str1 = new String(chars,1,3);
        System.out.println(str1);

        //2、字符串转换成字符数组
        char[] chars1 = str1.toCharArray();
        System.out.println(chars1.length);

        String message ="hello world learn java哈";
        //3.统计长度
        int length = message.length();
        System.out.println("长度是:"+length);

        //4.IndexOf():默认从头开始查找获取指定字符串的下标值
        int index = message.indexOf("o");
        System.out.println("从头查找index:"+index);

        index = message.indexOf("o",5);
        System.out.println("指定下标查找index:"+index);

        //从末尾开始找,如果没找到就返回-1, -1表示不包含
        index = message.lastIndexOf("0");
        System.out.println("末尾查找index:"+index);
        //5.contains(""): 判断是否包含某字符串
        boolean flag = message.contains("world");
        System.out.println(flag);

        //6.根据下标返回具体的值
        char c = message.charAt(5);
        System.out.println("字符:"+c);

        //7.截取(开始下标,结束下标),取前不取后    >=beginindex   <endindex
        String msg = message.substring(1, 10);
        System.out.println("截取:"+msg);
        //从开始下标截取到末尾
        msg = message.substring(3);
        System.out.println("截取:"+msg);

2.1字符串的替换、转换、拼接、比较、判断开头字符和结尾字符、拆分数组

        //8、替换replace(老的值,替换后的值)
        msg = message.replace('b','x');
        System.out.println("替换:"+msg);

        msg = message.replace("world","xxoo");
        System.out.println("替换:"+msg);

        msg = message.replaceFirst("e","xxoo");
        System.out.println("替换:"+msg);

        //9.转换成大小写
        msg = message.toUpperCase();
        System.out.println("大写:"+msg);

        String s = msg.toLowerCase();
        System.out.println("小写"+s);

        //10.字符串拼接,类似+
        msg = message.concat("12356abc");
        System.out.println("拼接:"+msg);

        //11.比较
        boolean bl = message.equals("abc");
        System.out.println(bl);

        //比较字符串对象的值不区分大小写
        boolean bl1 = message.equalsIgnoreCase("abc");

        //12、字符串转成字节数组
        byte[] bytes = message.getBytes();
        System.out.println(bytes.length);

        //13.判断开头字符和结尾字符
        boolean hell = message.startsWith("h");
        System.out.println("开头是否有:"+hell);

        //14.将字符串根据符号拆分成数组   "12,33,55,77"
        String phone ="86-0731-12345678";
        String[] phones = phone.split("-");

        int sum = 0;
        for (int i = 0; i < phones.length; i++) {
            System.out.println(phones[i]);
            //字符串转换成整数
            int num = Integer.parseInt(phones[i]);
            //Double.parseDouble()

            sum+=num;
        }
        System.out.println("累加和:"+sum);

3.常考面试题

    面试题:请解释String对象的两种实例化方式的区别?

    • String对象的实例化方式有两种:一种是直接赋值,另外一种是通过构造方法完成;

    • 直接赋值:只开辟一个堆内存空间,而且采用了共享设计模式,可以自动的入池,以备下次对象继续使用;

    • 构造方法:会开辟两块内存空间,其中有一块空间将成为垃圾,而且不会自动入池,但是可以使用intern()方法进行手工入池;

     • 从开发角度而言,很明显使用直接赋值的方式会更好一些。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值