11、常见API

01、String类概述及构造方法简介

一、字符串

由多个字符组成的一串数据

二、简介

String类代表的是一个字符串。字符串对象在开发中是最常见的。为了方便我们对字符串进行操作,java就把字符串用对象进行了封装,这个封装就是String类

三、String类的构造方法

1.空构造

String();

2.参数作为字节数

String( byte[] bytes );

String( byte[] bytes, int index, int length );

3.参数作为字符串

String( char[] value );

String( char[] value, int index, int length );

4.参数为字符串

String( String str );

02、String常见问题

A:字符串一旦初始化就不可以被改变

String s = "hello";

s+="word";

System.out.println(s); //结果为:helloword

注意:这里指的字符串是在常量池里面的值不能发生改变。而不是说字符串的引用不能改变

B:String s1 = new String("abc"); 和 String s2 = "abc"; 有区别吗?

第一种方式:其实在内存中有两个对象存在

第二种方式:在内存中只有有一个对象存在

03、String类的判断功能

boolean equals(Object ob);

判断字符串的内容是否相等,区分大小写

boolean equalsIgnoreCase(String str);

判断字符串中的内容是否相等,不区分大小写

boolean contain(String str);

判断字符串对象是否包含给定字符串

boolean startsWith(String str);

判断字符串是否以给定字符串开始

boolean endWith(String str);

判断字符串是否以给定字符串结束

boolean isEmpty();

判断字符串对象是否为空,数据是否为空(空字符串,不是null)

04、String类的获取功能

int length();

获取字符长度

char charAt(int index);

返回字符串中给定索引处的字符

int indexOf(int ch);

返回指定字符在此字符串中第一次出现的索引

int indexOf(String str);

返回指定字符在此字符串中第一次出现的索引

int indexOf(int ch, int fromIndex);

返回在此字符串中第一次出现指定字符串的索引,从指定的索引开始

int indexOf(String str, int fromIndex);

返回在此字符串中第一次出现指定字符串的索引,从指定的索引开始

String substring(int start);

截取字符串,返回从指定位置开始截取后的字符串

String substring(int start, int end);

截取字符串,返回从指定位置开始到指定位置结束截取后的字符串

05、Sting类的功能转换

byte[] getBytes();

把字符串转换成字节数组

char toCharArray();

把字符串转换成字符数组

static String copyValueOf(char[] chs);

把字符数组转换为字符串

static String valueOf(char[] chs);

把字符数组转换成字符串

static String valueOf(int i);

把基本类型(此处列子用int类型)转换成字符串

String toLowerCase();

把字符串变成小写

String toUpperCase();

把字符串变成大写

String concat(String str);

拼接字符串

06、String类的其他功能

一、替换功能

String replace(char oldChar, char newChar);

用新的字符去替换指定旧的字符

String replace(String oldString, String newString);

用新的字符串去替换指定的就字符串

二、切割功能

String[] split(String reges)

三、去除两端的空格

String trim();

四、按字典顺序比较两个字符串

int compareTo(String str);

int compareToIgnoreCase(String str);

相关推荐
吾日三省Java3 小时前
Spring Cloud架构下的日志追踪:传统MDC vs 王炸SkyWalking
java·后端·架构
爱玩泥巴的小t3 小时前
new Thread().start()底层做了什么?
java
码路飞7 小时前
GPT-5.4 Computer Use 实战:3 步让 AI 操控浏览器帮你干活 🖥️
java·javascript
祈安_8 小时前
Java实现循环队列、栈实现队列、队列实现栈
java·数据结构·算法
皮皮林55120 小时前
拒绝写重复代码,试试这套开源的 SpringBoot 组件,效率翻倍~
java·spring boot
顺风尿一寸1 天前
从 Java NIO poll 到 Linux 内核 poll:一次系统调用的完整旅程
java
程途知微1 天前
JVM运行时数据区各区域作用与溢出原理
java
华仔啊1 天前
为啥不用 MP 的 saveOrUpdateBatch?MySQL 一条 SQL 批量增改才是最优解
java·后端
xiaoye20181 天前
Lettuce连接模型、命令执行、Pipeline 浅析
java
beata1 天前
Java基础-18:Java开发中的常用设计模式:深入解析与实战应用
java·后端