字符串总结

字符串总结

1. 如何定义一个字符串:

1)String a = “乘舟侧畔千帆过,病树前头万木春”;

2)String b = “乘舟侧畔千帆过,病树前头万木春”;

3)String c = new String( “乘舟侧畔千帆过,病树前头万木春”);

4)String d = new String(“乘舟侧畔千帆过,病树前头万木春”);

总结:字符串a 与字符串 b 地址相等,所以 a == b ;字符串 c 与字符串 d 因为通过new 关键字创建,所以cd创建时都进行了分配空间,所以 c d 的地址不相等,c != d; 但是通过方法equals() 可以比较两个字符串的值。

因为cd的值相等,所以c.equals(d)的返回值为true

2. 常用方法举例如下:

import java.util.Arrays;


/**
 * @author Gsc
 * @category 字符串测试类
 */
public class TestString {

public static void main(String[] args) {
String a= "莫愁前路无知己,天下谁人不识君,天下";
String a1 = "莫愁前路无知己"; 
String a2 = "  莫愁    前路无知己    ";
char[] a3 = {'莫','愁','前','路','无'};
String b = new String("莫愁前路无知己,天下谁人不识君"); //字符串的两种创建方式

char c = a.charAt(3); //根据下标截取字符,返回值类型为 char
System.out.println(c); //输出“路”

String d = String.valueOf(c); //将字符型装换成字符串型

String e = a.concat(b); //将指定的字符串添加到现有字符串上
System.out.println(e); //输出 “莫愁前路无知己,天下谁人不识君莫愁前路无知己,天下谁人不识君”

boolean f = a.contains(a1); //如果字符串a中包含字符串a1,则返回true,否则false
System.out.println(f); //输出“true”

boolean g = a.contentEquals(b); //比较两字符串的值是否相等,相等则返回true,否则false
System.out.println(g); //输出“true”

String h = String.copyValueOf(a3); //返回指定数组中表示该字符序列的 String。 
System.out.println(h); //输出“莫愁前路无”

boolean i = a.endsWith("识君"); //判断字符串是否以指定字符串结尾
System.out.println(i); //输出“true”

boolean j = a.startsWith("莫愁"); //判断字符串是否以指定字符串开始
System.out.println(j); //输出“true”

boolean k = a.equals(b); //判断是否与指定的字符串值相等
System.out.println(k); //输出“true”
//a.equasIgnoreCase(b); 判断是否与指定的字符串值相等,忽略大小写


int l = a.indexOf("天下"); //找到则返回指定字符串在本字符串中的第一次出现的位置,找不到返回-1
System.out.println(l); //输出“8”

boolean m = a.isEmpty(); //判断字符串是否为空或者说字符长度为0时返回true
System.out.println(m); //输出“true”

int n = a.lastIndexOf("天下"); //找到返回指定字符串最后一次出现在本字符串中的位置,找不到返回-1
System.out.println(n); //输出“16” 

int o = a.length(); //返回字符串的长度
System.out.println(o); //输出“18”

String p = a.replace("莫愁", "mochou"); //将指定字符串与本字符串中的指定字符串替换
System.out.println(p); //输出“mochou前路无知己,天下谁人不识君,天下”

String q = a.replaceAll("mochou", "莫愁"); //将指定字符串与本字符串中的指定字符串替换
System.out.println(q); //输出“莫愁前路无知己,天下谁人不识君,天下”
//replace和replaceAll的区别在于replace的参数列表中可以是字符也可以是字符串,而replaceAll中只能是字符串

String[] r = a.split(","); //以字符串中的某个字符或者字符串为分隔符,以此分隔符将字符串分割为一个数组
System.out.println(Arrays.toString(r)); //输出“[莫愁前路无知己,天下谁人不识君,天下]”

String s = a.substring(5, 10); //从下标为5的字符截取到下标为10的字符,组成一个新的字符串(包括下标为5和10的字符)
String s1 = a.substring(1); //从下标为1的字符开始截取,组成一个新的字符串
System.out.println(s); //输出“知己,天下”
System.out.println(s1); //输出“愁前路无知己,天下谁人不识君,天下”

char[] t = a.toCharArray(); //将此字符串转换成一个字符数组
System.out.println(Arrays.toString(t)); //输出“[莫, 愁, 前, 路, 无, 知, 己, ,, 天, 下, 谁, 人, 不, 识, 君, ,, 天, 下]”

String u = a.toLowerCase(); //将此字符串所有的字母转换为小写
String v = a.toUpperCase(); //将此字符串中所有的字母转换为大写

String w = a2.trim(); //忽略字符串开始和结尾的空格(空白),组成一个新的字符串
System.out.println(w); //输出“莫愁    前路无知己”

String x = String.valueOf(b); //将(int long float double char char[] boolean)转换为字符串
*/


String chaina = "如今的中国已经不是过去的中国,不是孱弱的中国,而是富强的中国";
String key = "中国";
int pos = 0;
while(true){
pos = chaina.indexOf(key,pos);
if (pos == -1) {
break;
}
System.out.println(pos);
pos += key.length();
}
}
}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值