java字符串的知识总结

时间:2023-01-07 16:09:19

java字符串的基本概念

字符串是java特殊的类,使用方法像一般的基本数据类型。

声明字符串的方法:

字符串类型  字符串名字 = 字符串内容

例如 String str=“hello”;

字符串的作用:处理文本

java中处理文本主要应用类是String和StringBuffer,一般String是用来处理小的文本,StringBuffer用来处理大型文本。

字符串赋值

字符串初始化后,长度不会改变,并且内容也不变,如果要改变他的值,就会产生一个新的字符串。

例如:

String a=“你好”;

a = a +"吗"

程序会先产生a的字符串对象并在内存中申请了一段空间,此时要追加新的字符串是不可能的,因为字符串被初始化,长度是固定的,如果要改变它,只能放弃原来的空间,重新申请能够容纳"你好" 和 "吗" 2个字符串的空间,最后在将“你好吗” 字符串放到内存中。

字符串处理方法

串连接

java语言中有2中串连接方法一种是“+”,另一种是使用方法函数concat(String str)

例如

String str1="胡";

String str2="小牧";

System.out.println(str1+" "+str2);

System.out.println(str1.concat(str2));

2个输出的结果相同,

提取子字符串

方式是substring(int beginIndex,int endIndex)  或者 substring(int index)

substring(int beginIndex,int endIndex) :是提取开始位置和结束位置的字符串。

substring(int index):是提取从index指定的位置开始,一直到字符串的最后

例如

String str="nice to meet you"

//提取从字符串的第三个元素到第八个元素位置的字符串

System.out.println(str.substring(2,8)); 注意这里的字符串的顺序第一个是是从0开始数的第三个字符也就是2

//提取从字符串的第3个元素开始到结束位置的字符串

System.out.println(str.substring(2))

从字符串中分解字符

charAt(int index)

这个方法返回的是字符,而不是字符串,这是和前面的区别,参数index是指定字符串序列中字符的位置

String str=“nice to meet you”;

//获取第二个位置的字符

System.out.println(str.charAt(1))//结果是i

得到字符串的长度

length()

注意数组的长度是length,而字符串的长度是length(),数组的长度后面没有括号,得到的数组是是一个属性值,而得到字符串长度是一个方法,

测试字符串是否相等

equals(String str)

例如

String str1 = “123”;

String str2 = “123”;

if(str1.equals(str2)){

 System.out.println("字符串相同")

}else{

 System.out.println("字符串不相同");

}

// 忽略大小写的比较是equalsIgnoreCase(String str)

查找特定字符串

查找字符中子串有三个方法:

indexOf(子串内容) 方法是帮助查找子串,如果返回时负数,就表示在当前字符串中没有找到所查找的子串。

startsWith(子串内容)方式是测试当前字符串是否以一个子串开始

endsWith(子串内容) 方法是测试当前子串是否以子串内容为结尾

例如

String str = "大糊涂要考试了";

System.out.println(str.indexOf("小"));

System.out.println(str.startsWith("要"));

System.out.println(str.endsWith("大"));

基本类型转换成字符串

valueOf

将基本类型数据转换为相应的字符串。

String.valueOf(int i)  将int 变量转换为字符串

eg int i = 66;

 String str = String.valueOf(i)// 这时候 str 就是"66"

当然想把String 转换为基本数据类型可以使用包装类也可以使用

parse××

eg :byte 可以是Byte.parseByte(String s);将s转成byte

int可以是Integer.parseInt(String s); 将s转成int

long可以是Long.parseLong(String s);将s转成long

float和double可以是Double.parseFloat(String s)和Double.parseDouble(String s)


------------------

toString()方法

在java类库中基本类中,每一个类都有toString()方法,可以将这个方法写出来,也可以直接使用对象来代替toString()方法。

String str="abc"; System.out.println(str.toString());

(这个主要是java中内含有一种机制,系统默认会在这些对象后面自动加上toString()方法)