Java基础之String类

String的“生命起源”

String 确切地说是类的一种,任何一种语言都没有字符串数据类型,Java是用String 方便字符串操作,C语言是加入头文件等等。

String 的两种初始化

String 静态初始化,直接赋值

String str = "hello";

String 的静态初始化会将字符串存进数组,数组中没有重复字符串,str 和 str1 指向的是同一个字符串

String str = "hello";
String str1 = "hello";

String 动态初始化,new 开辟空间,不会存进数组

String str2 = new String("hello");

因此,str == str1 是 true,str == str2 是 false

String 的加号真的是“+”嘛?

刚才讲了 String 是类,既然是类就不会有“+”操作,每用一个加号其实指向都发生了改变,如下代码

String str1 = "hello";
String str2 =str1+"word";
String str3 = str2+"!";

str1 指向的是 hello 的地址,str2 指向的是 helloword 字符串的地址,str3 指向的是 helloword! 字符串的地址

String类的常见方法

这里总结了十个


public class Person{
 public static void main(String[] args) {
     String String1 = new String("abc");
     System.out.println("原字符串:"+String1);
     //连接操作,将另一个字符串连接在原字符串后面
     String1 = String1.concat("def");
     System.out.println("尾部连接后的字符串:"+String1);
     //替换操作,方法括号内第一个是原字符串要被替换的部分,第二个是替换的内容
     String1 = String1.replace("def", "123");
     System.out.println("替换后的字符串:"+String1);
     //截取操作,如下将索引号0-3的字符截取
     String1 = String1.substring(0,3);
     System.out.println("截取后的字符串:"+String1);
     //查找索引号操作,查找字符操作
     char number = String1.charAt(2);
     System.out.println("索引号2的字符:"+number);
     int word = String1.indexOf("b");
     System.out.println("字符b的索引号:"+word);
     //判断字符串前段,后段是否相同的操作
     boolean a = String1.endsWith("c");
     System.out.println("判断后缀是否相同:"+a);
     boolean b = String1.startsWith("a");
     System.out.println("判断前缀是否相同:"+b);
     //判断两个字符串是否完全相同的操作
     String String2 = "abcd";
     boolean c = String1.equals(String2);
     System.out.println("判断字符串是否相同:"+c);
     //将小写字符变为大写
     String1 = String1.toUpperCase();
     System.out.println("abc的 大写:"+String1);
     //拆分字符串
     String String3 = "姓名:xxx;年龄:xx";
     String[] arr = String3.split("\\;");
     for(String i:arr) {
      System.out.println("第i个元素String:"+i);
     }
  }
}

String和他的挛弟StringBuffer

简单的讲,String是不可变字符串,StringBuffer是可变字符串,这是两者最大的区别。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值