城管希课堂之StringBuffer and StringBuilder 集合

StringBuffer  JDK 1.0出来的 线程安全 耗费系统资源 StringBuilder JDK 1.2出来的 线程不安全 节省系统资源 Stri

StringBuffer  JDK 1.0出来的 线程安全 耗费系统资源

StringBuilder JDK 1.2出来的 线程不安全 节省系统资源


StringBuffer和StringBuilder都是可变的字符序列(修改的是字符本身)

操作StringBuffer的方法 一般是没有返回值的


String

线程不安全的 不可变的 字符序列(不能修改字符串本身)    

                // 插入StringBuffer sb = new StringBuffer("wanglong");sb.insert(4, "da").append("nb");System.out.println(sb);sb.setCharAt(1, 'x');System.out.println(sb);// 修改
StringBuffer stringBuffer = new StringBuffer();stringBuffer.append("wanglong");// 删除 留头不留尾 实际删除[0,4)// 传入结束坐标>字符串的长度 相当于清空字符串stringBuffer.delete(0, 4);System.out.println(stringBuffer);//注意:直接传入的是要删除的字符的角标stringBuffer.deleteCharAt(1);System.out.println(stringBuffer);// 获取 StringBuffer中的字符char c = stringBuffer.charAt(1);System.out.println(c);// 字符数组转化成StringBuffer对象char[]array = {'a','b','c'};String valueOf = String.valueOf(array);StringBuffer sb =new StringBuffer(valueOf);System.out.println(sb);

                // 键盘输入一个字符串 将字符串反转Scanner scanner = new Scanner(System.in);String string = scanner.nextLine();StringBuffer sb = new StringBuffer(string);sb.reverse();System.out.println(sb);

                // 替换 replaceStringBuilder sb = new StringBuilder();sb.append("wanglong");sb.replace(0, 4, "lixiao");System.out.println(sb);

集合!

1.单列集合 2.双列集合 

数组:长度一旦确定 不能变了 只能保存 相同数据类型的元素

集合:长度可以改变 可以存放不同类型的元素(集合中只能存储 引用类型(对象类型))

collection.size() 获取元素个数

collection.contains() 判断包含

collection.remove() 删除元素

collection.isEmpty 判断是不是空集合