小学生学习Java的StringBuffer和StringBuilder 以及 集合

xiaoxiao2021-02-28  19

StringBuffer和StringBuilder

      

        当对字符串进行修改的时候,需要使用 StringBuffer 和 StringBuilder 类。

和 String 类不同的是,StringBuffer 和 StringBuilder 类的对象能够被多次的修改,并且不产生新的未使用对象。

StringBuilder和 StringBuffer 之间的最大不同在于 StringBuilder 的方法不是线程安全的(不能同步访问)。

StringBuilder 相较于 StringBuffer 有速度优势,所以多数情况下建议使用 StringBuilder 类。

然而在应用程序要求线程安全的情况下,则必须使用 StringBuffer 类。

    // 创建一个StringBuffer 对象

    StringBuffer sb = new StringBuffer();

    

    1.拼接

    sb.append("loveme");

    System.out.println(sb);

    2.插入

    sb.insert(4, "d").append("y");

    System.out.println(sb);

    3.修改

    sb.setCharAt(2, 'x');

    System.out.println(sb);

    4. 直接传入的是要删除的字符的角标

    sb.deleteCharAt(2);

    System.out.println(sb);

    5.反转

    sb.reverse();

    System.out.println(sb);

    6.删除  传入结束坐标如果大于字符串的长度,相当于清空字符串

    sb.delete(0, 1);

    System.out.println(sb)

    

    7.获取 StringBuffer中的字符

    char c = sb.charAt(1);

    System.out.println(c);

    8.替换

    sb.replace(0, 4, "you");

    System.out.println(sb);

    9.StringBuffer 转换成 字符串类型

    String string = sb.toString();

  System.out.println(string);

集合

    集合:或者叫容器,是一个包含多个元素的对象         集合比数组的优势:            1. 集合可以存储任意类型的对象数据,数组只能存储同一种数据类型 的数据。            2. 集合的长度是会发生变化的,数组的长度是固定的。

   数组: 存储同一种数据类型的集合容器.

        数组的特点:             1. 只能存储同一种数据类型的数据。             2. 一旦初始化,长度固定。              3. 数组中的元素与元素之间的内存地址是连续的。         注意: Object类型的数组可以存储任意类型的数据。  

         

/ 例子: public static void main(String[] args) { // 创建一个集合 保存3个学生 打印学生姓名 Collection collection = new ArrayList(); collection.add(new Student("p1",11)); collection.add(new Student("p2",12)); collection.add(new Student("p3",13)); // 集合转数组 // 向上转型 Object[] array = collection.toArray(); // 向下转型 // 需要把数组的每一个对象都转化成Student类型 // Student[] students = (Student[])array; 错误转法 for (int i = 0; i < array.length; i++) { // 将数组中的每一个对象 转换 Student s = (Student)array[i]; System.out.println(s.getName()); } }
转载请注明原文地址: https://www.6miu.com/read-2599984.html

最新回复(0)