String类与StringBuffer类

String类与StringBuffer类

  API指的是应用程序接口。本文章涉及的Java API指的是JDK中提供的各种功能的java类。

String类使用

看代码

public class Example{
	public static void main(String[] args){
	
   		String str1 = new String; //创建一个空的字符串

		String str2 = new String("abcd"); //创建一个内容为abcd的字符串

		char[] charArray = new char[]{'d','f','g'};//创建一个内容为字符数组的字符串
   }
}

字符串的基本操作

public class test {
    public static void main(String[] args){
        String s = "dfasdgfasdf";//声明字符串
        System.out.println("字符的长度为:"+ s.length());
        System.out.println("字符串中第一个字符:"+ s.charAt(0));
        System.out.println("字符g第一次出现的位置" + s.indexOf('g'));
        System.out.println("字符g最后出现的位置" + s.lastIndexOf('f'));
        System.out.println("子字符串第一次出现的位置" + s.indexOf("gf"));
        System.out.println("子字符串最后出现的位置" + s.lastIndexOf("df"));
    }
}
字符的长度为:11
字符串中第一个字符:d
字符g第一次出现的位置5
字符g最后出现的位置10
子字符串第一次出现的位置5
子字符串最后出现的位置9

字符串转换操作

字符串转换成数组形式,字符串中的字符大小写转换

public class test {
    public static void main(String[] args){
        String str = "abcde";
        System.out.println("将字符串转换成字符数组后的效果:");
        char[] charArray = str.toCharArray(); //字符串转换成字符数组
        for (int i =0;i<charArray.length;i++){
            if (i != charArray.length -1){
                //如果不是数组的最后一个元素,在元素后面加逗号
                System.out.print(charArray[i] + ",");
            }
            else{
                // 数组的最后一个元素的后面不加逗号
                System.out.println(charArray[i]);
            }
        }

        System.out.println("将字符串转换成大写之后的结果:"+ str.toUpperCase());
        System.out.println("将int值转换成为String类型之后的结果"+ String.valueOf(12));

    }
}

将字符串转换成字符数组后的效果:
a,b,c,d,e
将字符串转换成大写之后的结果:ABCDE
将int值转换成为String类型之后的结果12

字符串的替换与去空

可以使用String类的replace(参数1,参数2)。参数1:需要被替换的字符串,参数2:将要替换的字符串
trim():进行字符串的替换和去除空格操作

字符串的判断操作

操作字符串时需要对对其进行判断

public class test {
    public static void main(String[] args) {
        String s1 = "String";
        String s2 = "Str";
        System.out.println("判断是否以字符串Str开头:" + s1.startsWith("Str"));
        System.out.println("判断是否以字符串ng开头:" + s1.endsWith("ng") );
        System.out.println("判断是否包含字符串tri:"+ s1.contains("tri"));
        System.out.println("判断字符串是否为空:"+ s1.isEmpty());
        System.out.println("判断两个字符串是否相等:"+ s1.equals(s2));
    }
}
判断是否以字符串Str开头:true
判断是否以字符串ng开头:true
判断是否包含字符串tri:true
判断字符串是否为空:false
判断两个字符串是否相等:false

字符串的截取和分割

字符串的截取和分割操作提供了两个方法

String str= "羽毛球-篮球-兵乓求";
str.substring(4): //从第五个字符截取到末尾的结果
str.substring(4,6);//从第五个字符截取到第六个字符的结果

String[] strArray = str.split("-"; //将字符串按“-”分割为字符串数组

StringBuffer

由于字符串时常量,因此一旦创建,其内容和长度是不可改变的。String和StringBuffer类最大的区别在于它的内容和长度都是可以改变的

方法声明功能描述
StringBuffer append(char c)添加参数到StringBuffer对象中
StringBuffer insert(int offset,String str)将字符串中的offset位置插入字符串str
StringBuffer deleteCharAt(int index)移除此序列指定位置的字符
StringBuffer delete(int start,int end)删除StringBuffer对象中指定范围的字符或字符串序列
StringBuffer repace(int start,int end,String s)在StringBuff对象中替换指定的字符或字符串序列
void setCharAt (int index,char ch)修改指定位置index处的字符串
String toString()返回StringBuffer缓冲区中的字符串
StringBuffer reverse()将此字符序列用其反转形式取代

注意:
1:
String类表示的字符串是常量,一旦创建后,内容和长度都是无法改变的。
而StringBuffer 表示字符容器,其内容和长度可以随时修改。
如果该字符串仅用于表示数据类型,则使用String类即可。
但是如果需要对字符串中的字符进行增删查改操作,则使用StringBuffer类
2:
String类覆盖了Object类的equals()方法,而StringBuffer类没有覆盖Object类的equals()方法。
3:
String类对象可以用操作符“+”进行连接,而StringBuffer类对象之间不能。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值