String的初步学习

20240801字符串

一:这两天真正写完了java的第一个比较全面的程序——图书管理系统。

二:String类的学习:

  1. 字符串构造(三种):

//1、使用常量串构造

String s1 = "hello bit";
System.out.println(s1);
//2、直接newString对象

String s2 = new String("hello bit");
System.out.println(s2);

//3、使用字符数组进行构造

char[] array = {'h','e','l','l','o','b','i','t'};
String s3 = new String(array);
System.out.println(s3);

  1. String对象的比较(4种):

A、==比较是否引用同一个对象:对于内置类型,==比较的是变量中的值;对于引用类型,==比较的是引用中的地址。(String就是引用类型,所以==比较的是String的地址)

B、.equals:boolean equals(Object anObject)按照字典序比较(字符大小的顺序)

String类重写了父类Object中equals方法,Object中equals默认按照==比较,String重写equals方法后,按照如下规则进行比较,比如:s1.equals(s2)

==比较的是对象,即位置,.equals比较的是内容。

C、compareTo:  int compareTo(String s)方法:按照字典序进行比较。

与equals不同的是,equals返回的是boolean类型,而compareTo返回的是int类型,具体比较方式:

首先:按照字典次序大小比较,如果出现不等的字符,直接返回这两个字符的大小差值。

之后:如果前k个字符相等(k为两个字符长度最小值),返回值两个字符串长度差值。

D、compareToIgnoreCase:   int compareToIgnoreCase(String str)方法:与compareTo方式相同,但是忽略大小写比较。

3、字符串查找:9个

char charAt(int index):返回index位置上字符,如果index为负数或者越界,抛出IndexOutOfBoundsException异常

int indexOf(int ch):返回ch第一次出现的位置,没有返回-1

int indexOf(String str):返回str第一次出现的位置,没有返回-1

int indexOf(int ch,int fromIndex):从fromIndex位置开始找ch第一次出现的位置,没有返回-1

int indexOf(String str,int fromIndex):从fromIndex位置开始找str第一次出现的位置,没有返回-1

int lastIndexOf(int ch):从后往前找,返回ch第一次出现的位置,没有返回-1

int lastIndexOf(String str):从后往前找,返回str第一次出现的位置,没有返回-1

int lastIndexOf(int ch,int fromIndex):从fromIndex位置开始找,从后往前找ch第一次出现的位置,没有返回-1

int lastIndexOf(String str,int fromIndex):从fromIndex位置开始找,从后往前找str第一次出现的位置,没有返回-1

4、字符串转化

数值和字符串转化:

数字转字符串:String s1 = String.valueOf(1234);

字符串转数字:int data1 = Integer.parseInt(1234);

                 double data2 = Double.parseDouble(12.34);大小写转换:

小写转大写:sout(s1.toUpperCase());

大写转小写:sout(s2.toLowerCase());

字符串转数组:

字符串转数组:

char[] ch = s1.toCharArray();
for (int i = 0; i < ch.length; i++) {
    System.out.print(ch[i]);
}
System.out.println();
//数组转字符串
String s2 = new String(ch);
System.out.println(s2);

格式化。

5、字符串替换:

String replaceAll(String regex,String replacement)替换所有的制定内容

String replaceFirst(String regex,String replacement)替换首个内容

6、字符串拆分

7、字符串截取

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值