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);

相关推荐
Bingo_BIG9 小时前
Java Spring 批量修改,实体、接口、方法的定义
java·spring
画中有画9 小时前
软件架构中质量属性(性能、安全、可扩展性)的权衡设计
java·运维·安全
Shaoxi Zhang10 小时前
JAVA学习笔记035——对象和JSON格式
java·笔记·学习
赵丙双10 小时前
CountDownLatch 源码分析
java·aqs·countdownlatch
余额瞒着我当琳10 小时前
C++--深拷贝三件套 + swap + 写时拷贝 + vector 扩容 + reserve
java·开发语言·c++
thefool11226610 小时前
翻转二叉树
java
坐吃山猪10 小时前
WebClient内存配置解析
开发语言·springboot·webflux
jdksjw11 小时前
同步与异步、阻塞与非阻塞、多线程、协程超详细讲解(Python并发编程从入门到精通)
开发语言·python
Zach_菠萝侠11 小时前
【DeepSeek Harness 研究】进化方向4:安全加固 思考、设计与实现
开发语言·安全·deepseek
喜欢打篮球的普通人11 小时前
LLVM Backend Lowering 从入门到实战:把 IR 变成机器码的完整链路
android·java·数据库