Java学习-常用类(String)

一、创建

1.1 直接创建

语法:String 字符串名 = “字符串内容”;

String str = "bjh"; 
System.out.println(str);

1.2 构造函数创建

语法:String 字符串名 = new String(“字符串内容”)
注意:此种方式创建了两个对象。

String str = new String("bjh"); // 注意:此种方式创建了两个对象。
System.out.println(str);

1.3 字符数组转换

语法: String 字符串名 = new String(字符数组名)

char[] charstr = { 'b', 'a', 'i', 'd', 'u'};
String str = new String(charstr);
System.out.println(str);

二、长度

2.1 字符串.length()

语法:字符串.length();

2.2 字符串名.length()

语法:字符串名.length();

三、格式化

3.1 printf()

语法:
作用:

String f = "浮点型变量的值为%f,整型变量的值为%d,字符串变量的值为%s"
float floatVar = 1.0f;
int intVar = 2;
String stringVar = "we";
System.out.printf(f, floatVar, intVar, stringVar);

3.2 format()

语法:
作用:

String f = "浮点型变量的值为%f,整型变量的值为%d,字符串变量的值为%s"
float floatVar = 1.0f;
int intVar = 2;
String stringVar = "we";
String fs = String.format(f, floatVar, intVar, stringVar);
System.out.println(fs);

四、获取

4.1 知索引

4.1.1 单字符——charAt()

语法:字符串名.charAt(索引);

// 需求:获取第二个字符。
String str = "abcde";
System.out.println(str.charAt(1));
// 结果:b

4.1.2 多字符

语法一:字符串名.substring(beginindex,endindex);

扫描二维码关注公众号,回复: 4614498 查看本文章
// 需求:知索引1,3,获取之间的字符,遵循[1,3)。
String str = "abcde";
System.out.println(str.substring(1,3));
// 结果:bc

语法二:字符串名.substring(beginindex,beginindex + length);

// 需求:知索引1,长度为3,获取之间的字符,则遵循[1,1+3)。
String str = "abcde";
System.out.println(str.substring(1,4));
// 结果:bcd。

4.2 知字符

4.2.1 单索引

语法:字符串名.indexOf(“待查字符串”);
注意:获取第一次出现的索引。
语法:字符串名.lastIndexOf(“待查字符串”);
注意:获取最后一次出现的索引。

// 需求:获取ce第一次出现的索引。
String str = "abcedecedece";
System.out.println(str.indexOf("ce"));
// 结果:2。
// 需求:获取ce最后一次出现的索引。
String str = "abcedecedece";
System.out.println(str.lastIndexOf("ce"));
// 结果:10。

4.2.2 多索引

语法:
待续

五、增加

待续

六、替换——replace

语法:字符串名.replace(原字符,新字符);
语法:字符串名.replaceAll(正则表达式,新字符);
语法:字符串名.replaceFirst(正则表达式,新字符);

String str = "abcedefgcea";
// 替换所有。
System.out.println(str.replace("a","m")); // 结果:mbcedefgcem	   

七、删除

待续

八、拆分——split()

语法:字符串名.split(正则表达式);
语法:字符串名.split(正则表达式,拆分次数);

String str = "abcedaefagce";
String[] arr1 = str.split("a");
for (String s: arr1){
  System.out.println(s);// 结果:bced  ef gce
} 	   
String[] arr2 = str.split("a",2);	   
for (String s: arr2){
  System.out.println(s);// 结果:bcedaefagce
}  

九、拼接

9.1 +拼接

语法:字符串名 + 字符串名 + 字符串名;

9.2 concat拼接

语法:字符串名.concat(字符串名);
缺点:一次只能操作两个字符串。

十、查找判断

待续

十一、比较

11.1 compareTo()

语法:字符串名.compareTo(待比较字符串名);
注意:考虑大小写。
语法:字符串名.compareToIgnoreCase(待比较字符串名);
注意:不考虑大小写。

String str = "abcedefgce";
// 包含时,且小于,返回1
System.out.println(str.compareTo("a"));// 结果:1
// 等于时,返回0
System.out.println(str.compareTo("abcedefgce"));// 结果:0
// 被包含时,即大于时,返回-1
System.out.println(str.compareTo("abcedefgcem"));// 结果:-1
// 无关系时,返回字符串第一个字母和m的ASCII码的差值。
System.out.println(str.compareTo("m"));// 结果:-12。

11.2 equals()或==

语法:字符串名.equals(待比较字符串名);
语法:字符串名==待比较字符串名;

String str = "abcedefgce";
String str2 = "abcedefgce";
System.out.println(str.equals("a"));// 结果:false。
System.out.println(str.equals(str2));// 结果:true。
System.out.println(str=="a");// 结果:false。
System.out.println(str==str2);// 结果:true。

11.3 startsWith()或endsWith()

语法:字符串名.startsWith(待比较字符串名);
语法:字符串名.endsWith(待比较字符串名);

String str = "abcedefgce";
String str2 = "abcedefgce";
System.out.println(str.startsWith("ab")); // 开头为true,不开头为false。
System.out.println(str.endsWith("ce")); // 结尾为true,不结尾为false。

11.4 matches()

语法: 字符串名.matches(正则表达式);

十二、字母大小写互转

12.1 转大写——toUpperCase()

String str = "abcedaefagce";
String strA = str.toUpperCase();
System.out.println(strA);

12.2 转小写——toLowerCase()

String str = "abcedaefagce";
String strA = str.toUpperCase();
String stra = strA.toLowerCase();
System.out.println(stra);

十三、与数组互转

13.1 split()

语法:字符串名.split(“分割符”);

String str = "abc,eda,efa,gce";
String[] arr1 = str.split(",");
for (String s: arr1){
  System.out.println(s);// 结果:abc,eda,efa,gce
} 

13.2 toCharArray()

语法: 字符串名.toCharArray();

String str = "abc,eda,efa,gce";
char[] arr2 = str.toCharArray();
for (char s: arr2){
  System.out.println(s);// 结果:a b c , e d a , e f a , g c e
} 

十四、与数字互转

14.1 字符串转数字——parse数据类型()

语法:数据类型类.parse数据类型(字符串)

String  str = "345";
System.out.println(Integer.parseInt(str) + 1); // 结果:346。

14.2 数字转字符串——toString()

语法一:数字名.toString();
语法二:数字名 + “”;
语法三:String.valueOf(数字名);

Integer  num = 345;
System.out.println(num.toString());
System.out.println(num + ""); 
System.out.println(String.valueOf(num)); 

猜你喜欢

转载自blog.csdn.net/lizengbao/article/details/85078105