0
点赞
收藏
分享

微信扫一扫

【Java常用类】String类

腊梅5朵 2022-02-25 阅读 137

文章目录

一、概述

Java 没有内置的字符串类型, 而是在标准 Java 类库中提供了一个预定义类,很自然地叫做 String。每个用双引号括起来的字符串都是String类的一个实例。
String对象用于保存字符串,也就是一组字符序列,字符串常量对象是用双引号括起的字符序列,例如:"你好""14.31""toy"等。

字符串字符使用的是Unicode字符编码,一个字符(不区分字符汉字等)占两个字节。

二、剖析

2.1 结构剖析

在这里插入图片描述

在这里插入图片描述

2.2 创建剖析

创建String对象有两种方式:

第一种,直接赋值:

String s = "arbor";

第二种,调用构造器:

String s = new String("arbor");

在这里插入图片描述

2.3 String特性

比如下面代码:

String a = "abc";
a = "xyz";

在这里插入图片描述

String a = "hello";
String b = "abc";
String c = a + b;
public class String01 {

    String str = new String("arbor");

    public void change(String str) {
        str = "java";
    }

    public static void main(String[] args) {
        String01 aaa = new String01();
        aaa.change(aaa.str);
        System.out.println(aaa.str);
    }
}

三、String类的常用方法

equals(Object other):判断字符串内容是否相等,区分大小写;如果字符串与 other 相等,返回 true。

equalsIgnoreCase(String other):判断字符串内容是否相等,不区分大小写;如果字符串与 other 相等(忽略大小写),返回 true。

length():返回字符串的长度。

indexOf(...):获取字符(也可以是字符串)在字符串中第一次出现的索引,索引从0(或者可以自己指定)开始,如果找不到,返回-1。

lastIndexOf(...):获取字符(也可以是字符串)在字符串中最后一次出现的索引,索引从0(或者可以自己指定)开始,如果找不到,返回-1。

substring(...):截取指定范围的子串。只传入一个参数的话是从该数字的索引到最后一个字符。传入两个参数的话是从第一个索引值到第二个索引值,但是不包括第二个索引值,包头不包尾。

trim():返回删除了原始字符串头部和尾部的空格的新字符串。

charAt(int index):获取该字符串某处索引的字符。


toLowerCase():返回一个新字符串。将原始字符串中的大写字母改为小写。
toUpperCase():返回一个新字符串。将原始字符串中的小写字母改为大写。

replace(String str, String str2):返回一个新字符串。将一个字符串中的str更换为str2。

concat(String str):将str拼接到原始字符串后面。

split(...):根据传入的正则表达式将字符串分割,返回一个字符串数组。有些字符需要使用\转义。

toCharArray():将字符串转换为字符数组。

compareTo(String anotherString):比较两个字符串的大小,前者大返回正数;后者大返回负数;如果相等,则返回0。

format(...):格式化字符串。

public static void main(String[] args) {
    String name = "乔木先生";
    int age = 18;
    String info = "我的名字是%s,年龄是%d";
    String formatStr = String.format(info, name, age);
    System.out.println(formatStr);
}

输出结果:
在这里插入图片描述


intern():如果池中已经包含一个等于此String对象的字符串,则返回池中的字符串。否则,将此字符串添加到池中,并且返回此String对象的引用。
该方法最终返回的是常量池的对象地址。

startsWith(String prefix):如果字符串以 suffix 开头,则返回 true。
endsWith(String suffix):如果字符串以 suffix 结尾,则返回 true。

contains(String str):判断一个字符串中有没有str子串,有的话为true

join(...):返回一个新字符串,用给的字符连接所有元素。

String all = String.join(" / ", "S", "M", "L", "XL"); 
// all is the string "S / M / L / XL"
举报

相关推荐

0 条评论