String类

String类:

API介绍:
在这里插入图片描述
解析:

  • String类代表的是字符串,Java中所有的字符串都是该类的一个实例化对象。但String类被final关键字修饰,所以一旦被创建就无法被更改,String对象不可变但可以共享

构造方法:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

public class Demo4 {
    public static void main(String[] args){
        //1,直接赋值给对象
        String s1 = "abc";
        System.out.println(s1);//abc

        //2,String()无参构造方法
        String s2 = new String();
        System.out.println(s2);//空值

        //3,String(byte[]); 带byte[]构造方法,作用:将字节数组转换字符串
        byte[] bs = {97,98,99};
        String s3 = new String(bs);
        System.out.println(s3);//abc,通过字节编码表转换成字符

        //4、String(byte[],int,int) 带byte[],int,int构造方法 作用:将字节数组某部分转换(解码)字符串
        String s4 = new String(bs,1,1);
        System.out.println(s4);//b

        //5、String(char[]) 带char[]数组的构造方法 作用:将字符数组转字符串。
        char[] chs = {'a','b','c'};
        String s5 = new String(chs);
        System.out.println(s5);//abc

        //6、String(char[],int,int) 带char[],int,int构造方法 作用:将字符数组某部分转换(解码)字符串
        String s6 = new String(chs,1,2);
        System.out.println(s6);//bc
    }
}

常用功能方法:

  1. 判断功能

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

public class Demo4 {
    public static void main(String[] args){
        //contains(CharSequence) 判断参数字符串是否被原字符串包含
        String s1 = "abcdef";
        String s2 = "abc";
        boolean b = s1.contains(s2);
        System.out.println(b);//true

        //isEmpty() 是否为空字符串
        b = s1.isEmpty();
        System.out.println(b);//false

        //endWith() 判断字符串的后缀 ;startWith 判断字符串的前缀
        b = s1.startsWith("abc");
        System.out.println(b);//true
        b = s1.endsWith("ef");
        System.out.println(b);//true

        //.equals(Object) 比较内容,区分大小写
        String s3 = "ABC";
        b = s3.equals(s2);
        System.out.println(b);//false
        // .equalsIgnoreCase()忽略大小写比较
        b = s3.equalsIgnoreCase(s2);
        System.out.println(b);//true

    }
}
  1. 获取功能:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

import java.util.Arrays;

public class Demo4 {
    public static void main(String[] args){
        String s1 = "abcdefgh";
        //1,substring(int) 获取由下标开始到结尾的子字符串,下标从1开始
        String s2 = s1.substring(1);//(1,.....]
        System.out.println(s2);//defgh

        //2,substring(int,int) 获取有初始下标到结束下标的子字符串,下标从1开始
        String s3 = s1.substring(1,3);//(1,3]
        System.out.println(s3);//bc

        //3,.split(String) 根据目标字符串切割原字符串,获取目标字符串数组
        String s = "10_20_30_40";
        String[] strs = s.split("_");
        System.out.println( Arrays.toString(strs));//[10, 20, 30, 40]

        //4,indexOf(int)/indexOf(String) 通过字符或字符串获取下标
        int index1 = s1.indexOf("e");
        System.out.println(index1);//4
        int index2 = s1.indexOf("ef");
        System.out.println(index2);//4,字符串第一个获取的下标
        int index3 = s1.indexOf("ez");
        System.out.println(index3);//-1
        //注意点:
        // 1、indexOf(String) 通过由左往右扫描目标字符串获取原字符串中包含该字符串的首字符下标
        // 2、indexOf(String) 目标字符串必须全包含于原字符串中,否则返回-1表示该字符串不存在原字符串中就没有对应的下标

        //5,.charAt(int) 通过下标获取字符
        char s5 = s1.charAt(3);
        System.out.println(s5);//d

        //6,.length() 获取字符串的长度
        int n = s1.length();
        System.out.println(n);//8
    }
}
  1. 转换功能:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

import java.util.Arrays;

public class Demo4 {
    public static void main(String[] args) {
        //转换
        //1,trim() 去字符串左右空格,注意无法去除字符串中间空格。
        String s1 = " a bc   ";
        System.out.println(s1);//a bc
        String s2 = " abc   ";
        String ss = s2.trim();
        System.out.println(ss);//abc

        //2,toCharArray 将字符串转换字符数组
        String s4 = "abc";
        char[] cs = s4.toCharArray();
        System.out.println(Arrays.toString(cs));//[a, b, c]

        //3,.getBytes() 将字符串转换字节数组(编码过程)
        String s5 = "abc";
        byte[] bs = s5.getBytes();
        System.out.println(Arrays.toString(bs));//[97, 98, 99]
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值