字符串

47-了解字符串

字符串 String类,大写首字母的,是java中一个特殊的类。字符串不是java的基本数据类型,但是它可以像基本数据类型一样使用,声明和初始化的操作和基本类型基本一样。

String s = new String();Code language: JavaScript (javascript)

这个是调用String类的构造函数来创建对象。另外String也提供其他的构造函数,比如:

String(char a[])Code language: JavaScript (javascript)

通过字符数组来创建字符串。也可以:

String(char a[], int offset, int length)Code language: JavaScript (javascript)

截取字符数组中的某几个来初始化字符串。

String s = new String("人生中有许多的不如意,各人有各人的烦恼");
String s1 = new String(new char[] {'w','w','w','.'}, 1, 2);
System.out.println(s);
System.out.println(s1);Code language: JavaScript (javascript)

字符串操作

字符串连接使用 + 号,可以将字符串连接成一个新的字符串。字符串也可以通过 + 号连接其他类型的数据,最后得到的结果也是字符串。比如 "www.FoxDevelop.com" + 1,编译器会先把1转换为字符串然后连接。

String s = new String("人生中有许多的不如意,各人有各人的烦恼");
String s1 = new String(new char[] {'w','w','w','.'}, 1, 2);
System.out.println(s + s1 + "FoxDevelop.com网校" + 1 + 'b' + 1.2f + true);Code language: JavaScript (javascript)

也可以直接给字符串赋值的:

String s = "www.FoxDevelop.com";Code language: JavaScript (javascript)

48-字符串的相关操作

1. 获取字符串长度

str.length();Code language: CSS (css)

2. 获取某个字符的索引位置

indexOf 或者 lastIndexOf

3. 获取指定索引的字符

charAt

4. 去除字符串的空格

trim 去除字符串两端的空格

5. 去除字符串的所有空格(包含中间的)

StringTokenizer 或者 replaceAll

需要引入 import java.util.StringTokenizer;

6. 字符串替换

replace()方法
replaceFirst

示例代码

String s = "www.FoxDevelop.com";
int len = s.length();
int len1 = "www.baidu.com".length(); //字面值也有这个内置的方法
int index = s.indexOf("n"); //根据字符获取索引下标
System.out.println(index);
int index2 = s.lastIndexOf("n");
System.out.println(index2);
char c = s.charAt(3); //根据索引获取字符
System.out.println(c);

String s2 = " 风中     漫步       ";
//s2 = s2.trim();
System.out.println(s2.trim()); //只能去掉字符串两边的空格 返回是一个新的字符串 不会改变原来的s2

StringTokenizer st = new StringTokenizer(s2, " ");
String newStr = new String();
while (st.hasMoreTokens()) {
	newStr += st.nextToken();
}
System.out.println(newStr);

String s3 = " 风中     漫步       ";
s3 = s3.replaceAll(" ", "");
System.out.println(s3);Code language: JavaScript (javascript)

7. 判断字符串是否相等

equals
String name = "北美网校";
boolean b = name.equals("百度");
System.out.println(b);Code language: JavaScript (javascript)

8. 判断字符串的开始和结尾

startsWith
endsWith

9. 字符串大小写转换

toLowerCase
toUpperCase
String name = "北美网校";
boolean b = name.startsWith("北美");
boolean b2 = name.endsWith("北美");
System.out.println(b2);

String s = "bamn";
System.out.println(s.toUpperCase());Code language: JavaScript (javascript)

10. 字符串分割

split

还可以限制分割的份数。另外如果想多个分隔符可以使用 | 来连接,比如 ,|= 按照逗号和等号来分割。

String site = "www.FoxDevelop.com";
String[] arr = site.split("\\.|b");
System.out.println(arr.length);
for (String x : arr) {
	System.out.println(x);
}Code language: JavaScript (javascript)

49-格式化字符串

通过 format 方法格式化字符串:

System.out.println(String.format("这里是%s", "FoxDevelop.com网校"));Code language: CSS (css)
String words = String.format("%s明天去打%s吗?", "小潘", "羽毛球");
System.out.println(words);Code language: JavaScript (javascript)
Previous:

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注