JAVA:String类字符串类的常用方法

一、字符与字符串之间

1,public String(char[] value)

构造方法,将字符数组变作String类对象

2,public char[] toCharArray()

普通方法,将String对象转化为字符数组对象

        //1,public String(char[] value) 构造方法,将字符数组变作String类对象
        //2,public char[] toCharArray()  普通方法,将String对象转化为字符数组对象

        char[] char1 = new char[] {'a','b','c','d'};
        String str1 = new String(char1);
        System.out.println(str1);

        char[] char2 = str1.toCharArray();
        print(char2);

3.public String(char[] value,int offset , int count)

构造方法,将部分字符数组变作String;从下标offset开始,向后数count个

    //3.public String(char[] value,int offset , int count)
        //构造方法,将部分字符数组变作String;
        //从下标offset开始,向后数count个
        char[] char3 =new  char[] {'a','b','c','d'};
        String str3 = new String(char3,1,2);
        System.out.println(str3);

4.public.char charAt(int index)

普通方法,返回指定索引对应的字符信息

        //4.public.char charAt(int index)
        //普通方法,返回指定索引对应的字符信息
        System.out.println(str3.charAt(0));

二、字节与字符串之间

1,public String(byte[] value)

构造方法,将字符数组变作String类对象

2,public String(byte[] value,int offset ,int count)

构造方法,将部分字符数组变作String类对象

        //二、字节与字符串之间
        //1,public String(byte[] value) 构造方法,将字符数组变作String类对象
        //2,public String(byte[] value,int offset ,int count)
        // 构造方法,将部分字符数组变作String类对象
        byte[]  byte1 = new byte[] {97,98,100,108,105};
        System.out.println(new String(byte1)); //abdli
        System.out.println(new String(byte1,0,2));//ab

3.public byte[] getBytes()

普通方法,将字符串变为字节数组

        //3.public byte[] getBytes()
        //普通方法,将字符串变为字节数组
        String str5 ="hello";
        print(str5.getBytes()); //104 101 108 108 111

三、字符串的比较

1,public boolean equal(String anObject)

进行相等判断

2,public boolean equalIgnoreCase(String anObject);

进行相等判断,不区分大小写

3,public int compareTo(String anObject)

判断两个字符串的大小()按字节编码比较
=0;表示相等 >0:表示大于的结果 <0 :表示小于

 //三、字符串的比较
        //1,public boolean equal(String anObject); 进行相等判断
        //2,public boolean equalIgnoreCase(String anObject);
        // 进行相等判断,不区分大小写
        //3,public int compareTo(String anObject);
        //判断两个字符串的大小()按字节编码比较
        //=0;表示相等 >0:表示大于的结果 <0 :表示小于

        String str6 = "hello";
        System.out.println(str6.equals("HELLO")); //false
        System.out.println(str6.equalsIgnoreCase("HELLO"));//true

        System.out.println(str6.compareTo("HELLO")); //32
        System.out.println("HELLO".compareTo(str6));  //-32
        System.out.println(str6.compareTo("hello"));  //0

四、字符串的查找

1.public boolean contains(String s)

判定子字符串是否存在

        //1.public boolean contains(String s)
        //判定子字符串是否存在
        String str7 = "abcdefgh";
        System.out.println(str7.contains("def"));  //true
        System.out.println(str7.contains("dec"));  //false

2.public int indexOf(String str)

由前向后查找指定字符串的位置,若查找到则返回第一个数的位置,
若查找不到则返回-1

        //2.public int indexOf(String str)
        //由前向后查找指定字符串的位置,若查找到则返回第一个数的位置,
        //                         若查找不到则返回-1
        System.out.println(str7.indexOf("def"));    //3
        System.out.println(str7.indexOf("dec"));     //-1

3.public int lastIndexOf(String str)

由后向前查找指定字符串的位置,若查找到则返回第一个数的位置,
若查找不到则返回-1

        //3.public int lastIndexOf(String str)
        //由后向前查找指定字符串的位置,若查找到则返回第一个数的位置,
        //                         若查找不到则返回-1
        System.out.println(str7.lastIndexOf("def"));    //3
        System.out.println(str7.lastIndexOf("dec"));     //-1

4.public boolean startsWith(String str)

是否以指定字符串开头

        //4.public boolean startsWith(String str)
        //是否以指定字符串开头
        System.out.println(str7.startsWith("abc"));   //true
        System.out.println(str7.startsWith("abd"));    //false

5.public boolean endsWith(String str)

是否以指定字符串结尾

        //5.public boolean endsWith(String str)
        //是否以指定字符串结尾
        System.out.println(str7.endsWith("abc"));   //false
        System.out.println(str7.endsWith("fgh"));    //true

五、字符串的替换

1,public String replace(String target,String replacement)

用新的内容替换首个旧的内容

2,public String replaceALL(String target,String replacement)

用新的内容替换全部旧的内容

        //五、字符串的替换
        //1,public String replace(String target,String replacement)
        //用新的内容替换首个旧的内容
        String str8 = "hello world";
        String str8ResultA =str8.replace("l","-");
        System.out.println(str8ResultA); //he-lo world

        //2,public String replaceALL(String target,String replacement)
        //用新的内容替换全部旧的内容
        String str8ResultB =str8.replaceFirst("l","-");
        System.out.println(str8ResultB); //he--o wor-d

六、字符串的截取

1.public String substring(int beginindex)

从指定索引截取到末尾

2.public String substring(int beginindex,int endindex)

从指定索引截取到指定位置

        //六、字符串的截取
        //1.public String substring(int beginindex)
        //从指定索引截取到末尾
        //2.public String substring(int beginindex,int endindex)
        //从指定索引截取到末尾
        String str9 = "hello world";
        System.out.println(str9.substring(3));   //lo world
        System.out.println(str9.substring(3,8));  // lo wo

七、字符串的拆分

1.public String[] split (String regex)

按照指定的字符串为间隔拆分

2.public String[] split (String regex,int limit)

按照指定的字符串为间隔拆分,并限制字符串数组格式

        //七、字符串的拆分
        //1.public String[] split (String regex)
        //按照指定的字符串为间隔拆分
        String str10 = "hello world thanks";
        String[] str =str10.split(" ");
        print(str);
        //输出结果 hello
        //        world
        //        thanks

        //2.public String[] split (String regex,int limit)
        //按照指定的字符串为间隔拆分,并限制字符串数组格式
        String[] strA =str10.split(" ",2);
        print(strA);
        //输出结果 hello
        //        world thanks

        //Demo 一个较为复杂的拆分
        String info = "张三:20:男|李四:25:男|王五:25:女";
        String[] result = info.split("\\|");  //添加转义符号,与正则表达式的操作有关?
        for(String strInfo:result){
            String[] temp = strInfo.split(":");
            System.out.println("name:"+temp[0]+"  age:"+temp[1]+"  sex"+temp[2]);
        }
        //结果:
        //name:张三  age:20  sex男
        //name:李四  age:25  sex男
        //name:王五  age:25  sex女


八:其他方法

1,public String toLowerCase()

转小写

2,public String toUpperCase()

转大写

3,public String trim()

去掉开头和结尾的空格,保留中间的空格

4,public int length()

返回字符串长度

5,public boolean isEmpty()

判断是否为空

        // 八:其他方法
        //1,public String toLowerCase()
        //转小写
        //2,public String toUpperCase()
        //转大写
        String str11 = "HeLLo";
        System.out.println(str11.toLowerCase()); //hello
        System.out.println(str11.toUpperCase()); //HELLO

        //3,public String trim()
        //去掉开头和结尾的空格,保留中间的空格
        String str12 = "   HeLLo  world  ";
        System.out.println(str12.trim());  //HeLLo  world

        //4,public int length()
        //返回字符串长度
        System.out.println(str12.length());  //17

        //5,public boolean isEmpty()
        //判断是否为空
        System.out.println(str12.isEmpty());  //false
        System.out.println("".isEmpty());     //true



九、全部测试代码

package Chapter03;


public class StringsMethod {

    public static void main(String[] args) {

        //一、字符与字符串之间
        //1,public String(char[] value) 构造方法,将字符数组变作String类对象
        //2,public char[] toCharArray()  普通方法,将String对象转化为字符数组对象

        char[] char1 = new char[] {'a','b','c','d'};
        String str1 = new String(char1);
        System.out.println(str1);

        char[] char2 = str1.toCharArray();
        print(char2);

        //3.public String(char[] value,int offset , int count)
        //构造方法,将部分字符数组变作String;
        //从下标offset开始,向后数count个
        char[] char3 =new  char[] {'a','b','c','d'};
        String str3 = new String(char3,1,2);
        System.out.println(str3);

        //4.public.char charAt(int index)
        //普通方法,返回指定索引对应的字符信息
        System.out.println(str3.charAt(0));

        //二、字节与字符串之间
        //1,public String(byte[] value) 构造方法,将字符数组变作String类对象
        //2,public String(byte[] value,int offset ,int count)
        // 构造方法,将部分字符数组变作String类对象
        byte[]  byte1 = new byte[] {97,98,100,108,105};
        System.out.println(new String(byte1)); //abdli
        System.out.println(new String(byte1,0,2));//ab

        //3.public byte[] getBytes()
        //普通方法,将字符串变为字节数组
        String str5 ="hello";
        print(str5.getBytes()); //104 101 108 108 111

        //三、字符串的比较
        //1,public boolean equal(String anObject); 进行相等判断
        //2,public boolean equalIgnoreCase(String anObject);
        // 进行相等判断,不区分大小写
        //3,public int compareTo(String anObject);
        //判断两个字符串的大小()按字节编码比较
        //=0;表示相等 >0:表示大于的结果 <0 :表示小于

        String str6 = "hello";
        System.out.println(str6.equals("HELLO")); //false
        System.out.println(str6.equalsIgnoreCase("HELLO"));//true

        System.out.println(str6.compareTo("HELLO")); //32
        System.out.println("HELLO".compareTo(str6));  //-32
        System.out.println(str6.compareTo("hello"));  //0

        //四、字符串的查找
        //1.public boolean contains(String s)
        //判定子字符串是否存在
        String str7 = "abcdefgh";
        System.out.println(str7.contains("def"));  //true
        System.out.println(str7.contains("dec"));  //false

        //2.public int indexOf(String str)
        //由前向后查找指定字符串的位置,若查找到则返回第一个数的位置,
        //                         若查找不到则返回-1
        System.out.println(str7.indexOf("def"));    //3
        System.out.println(str7.indexOf("dec"));     //-1

        //3.public int lastIndexOf(String str)
        //由后向前查找指定字符串的位置,若查找到则返回第一个数的位置,
        //                         若查找不到则返回-1
        System.out.println(str7.lastIndexOf("def"));    //3
        System.out.println(str7.lastIndexOf("dec"));     //-1

        //4.public boolean startsWith(String str)
        //是否以指定字符串开头
        System.out.println(str7.startsWith("abc"));   //true
        System.out.println(str7.startsWith("abd"));    //false

        //5.public boolean endsWith(String str)
        //是否以指定字符串结尾
        System.out.println(str7.endsWith("abc"));   //false
        System.out.println(str7.endsWith("fgh"));    //true

        //五、字符串的替换
        //1,public String replace(String target,String replacement)
        //用新的内容替换首个旧的内容
        String str8 = "hello world";
        String str8ResultA =str8.replace("l","-");
        System.out.println(str8ResultA); //he-lo world

        //2,public String replaceALL(String target,String replacement)
        //用新的内容替换全部旧的内容
        String str8ResultB =str8.replaceFirst("l","-");
        System.out.println(str8ResultB); //he--o wor-d

        //六、字符串的截取
        //1.public String substring(int beginindex)
        //从指定索引截取到末尾
        //1.public String substring(int beginindex,int endindex)
        //从指定索引截取到末尾
        String str9 = "hello world";
        System.out.println(str9.substring(3));   //lo world
        System.out.println(str9.substring(3,8));  // lo wo

        //七、字符串的拆分
        //1.public String[] split (String regex)
        //按照指定的字符串为间隔拆分
        String str10 = "hello world thanks";
        String[] str =str10.split(" ");
        print(str);
        //输出结果 hello
        //        world
        //        thanks

        //2.public String[] split (String regex,int limit)
        //按照指定的字符串为间隔拆分,并限制字符串数组格式
        String[] strA =str10.split(" ",2);
        print(strA);
        //输出结果 hello
        //        world thanks

        //Demo 一个较为复杂的拆分
        String info = "张三:20:男|李四:25:男|王五:25:女";
        String[] result = info.split("\\|");  //添加转义符号,与正则表达式的操作有关?
        for(String strInfo:result){
            String[] temp = strInfo.split(":");
            System.out.println("name:"+temp[0]+"  age:"+temp[1]+"  sex"+temp[2]);
        }
        //结果:
        //name:张三  age:20  sex男
        //name:李四  age:25  sex男
        //name:王五  age:25  sex女


        //八:其他方法
        //1,public String toLowerCase()
        //转小写
        //2,public String toUpperCase()
        //转大写
        String str11 = "HeLLo";
        System.out.println(str11.toLowerCase()); //hello
        System.out.println(str11.toUpperCase()); //HELLO

        //3,public String trim()
        //去掉开头和结尾的空格,保留中间的空格
        String str12 = "   HeLLo  world  ";
        System.out.println(str12.trim());  //HeLLo  world

        //4,public int length()
        //返回字符串长度
        System.out.println(str12.length());  //17

        //5,public boolean isEmpty()
        //判断是否为空
        System.out.println(str12.isEmpty());  //false
        System.out.println("".isEmpty());     //true



    }

    public static void print(char [] chars)
    {
        for(int i=0 ;i<chars.length ;i++)
            System.out.print(chars[i]+"  ");
        System.out.println();

    }
    public static void print(byte [] chars)
    {
        for(int i=0 ;i<chars.length ;i++)
            System.out.print(chars[i]+"  ");
        System.out.println();

    }
    public static void print(String[] str)
    {
        for(int i=0 ;i<str.length ;i++)
            System.out.println(str[i]);
        System.out.println();

    }
}

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值