ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

java常用类(2)

2021-10-06 22:33:20  阅读:112  来源: 互联网

标签:常用 java String StringBuffer 指定 缓冲区 字符串


String类

  • java.lang.Object
    • java.lang.String

 

  • String类表示的字符串。java程序中的所有字符串,如 "abc",实现这个类的实例。

    字符串是常量,它们的值不能被创建后改变。支持可变字符串字符串缓冲区。因为字符串对象是不可改变的,所以它们可以被共享。例如:

         String str = "abc";
    

    相当于:

         char data[] = {'a', 'b', 'c'};
         String str = new String(data);
    

 

方法说明
charAt()返回指定索引的char值
contains()如果并且只有当此字符串包含指定的字符序列的字符串值,则返回真值

endsWith()

测试这个字符串以指定的后缀结束
equals()将此字符串与指定的对象比较
getBytes()将string编码成一个默认字符集字节,结果存放在一个新的字节数组
hashCode返回此字符串的哈希代码
indexOf()返回在这个字符串中指定发子字符串中第一个出现的索引
isEmpty()返回值如果为true,则length是0
lastIndexOf()返回在这个字符串中指定发子字符串中最后一个出现的索引
split()按传入的字符或字符串对String进行拆分,返回拆分之后的数组
startsWith()测试这个字符串是否以指定的前缀开始的
substring()int为开始的索引,对应String数字中的开始位置,截止的索引位置,对应String中的结束位置,返回字符串的子串
toString()返回一个“以文本方式表示”此对象的字符串
toCharArray()将此字符串转换为一个新的字符数组

StringBuffer类

  • java.lang.Object
    • java.lang.StringBuffer
  • 一个线程安全的,字符的可变序列。一个字符串缓冲区就像一 String,但是可以修改。在任何一个时间点,它包含一些特定的字符序列,但该序列的长度和内容可以通过某些方法调用。

    字符串缓冲区是安全的使用多个线程。在必要的情况下,所有的操作在任何特定的实例的行为,如果他们发生在一些串行顺序是一致的顺序的方法调用所涉及的每个单独的线程的方法是同步的。

    StringBuffer的主营业务是appendinsert方法的重载,以便接受任何数据类型。每个有效地将一个给定的数据到一个字符串,然后追加或插入字符串的字符的字符串缓冲区。的append方法总是添加这些字符缓冲区末尾的insert方法添加的特点;在指定点。

    例如,如果z指一个字符串缓冲区对象的当前内容"start",然后调用方法z.append("le")会导致字符串缓冲区包含"startle",而z.insert(4, "le")会改变字符串缓冲区包含"starlet"

    一般来说,如果某人是一个StringBuffer实例,然后sb.append(x)具有相同的效果sb.insert(sb.length(), x)

    方法说明
    append()追加一个字符串表示形式
    capacity()返回当前容量
    delete()删除从指定位置开始到指定位置结束的内容,并返回本身
    deleteCharAt()删除指定位置的字符,并返回本身
    insert()插入一个字符串进入这个序列
    repalce(int start,int end,String st)从start开始到end,用str替换
    reverse()反转调用该方法的StringBuffer对象的值

    StringBuilder类

  • java.lang.Object
    • java.lang.StringBuilder
  • StringBuilder用于多个线程不安全。如果需要同步然后建议StringBuffer可用。大致方法于StringBuffer一致

 在大部分情况下 StringBuilder > StringBuffer > String

标签:常用,java,String,StringBuffer,指定,缓冲区,字符串
来源: https://blog.csdn.net/m0_49201977/article/details/120629932

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有