Java基础知识强化38:StringBuffer类之StringBuffer的构造方法

1. StringBuffer的构造方法:

(1)StringBuffer():

(2)StringBuffer(CharSequence seq):

(3)StringBuffer(int capacity):

(4)StringBuffer(String str):

2. 案例演示:

 1 package cn.itcast_01;
 2
 3 /*
 4  * 线程安全(多线程讲解)
 5  * 安全 -- 同步 -- 数据是安全的
 6  * 不安全 -- 不同步 -- 效率高一些
 7  * 安全和效率问题是永远困扰我们的问题。
 8  * 安全:医院的网站,银行网站
 9  * 效率:新闻网站,论坛之类的
10  *
11  * StringBuffer:
12  *         线程安全的可变字符串。
13  *
14  * StringBuffer和String的区别?
15  * 前者长度和内容可变,后者不可变。
16  * 如果使用前者做字符串的拼接,不会浪费太多的资源。
17  *
18  * StringBuffer的构造方法:
19  *         public StringBuffer():无参构造方法
20  *        public StringBuffer(int capacity):指定容量的字符串缓冲区对象
21  *        public StringBuffer(String str):指定字符串内容的字符串缓冲区对象
22  *
23  * StringBuffer的方法:
24  *        public int capacity():返回当前容量。    理论值
25  *        public int length():返回长度(字符数)。 实际值
26  */
27 public class StringBufferDemo {
28     public static void main(String[] args) {
29         // public StringBuffer():无参构造方法
30         StringBuffer sb = new StringBuffer();
31         System.out.println("sb:" + sb);
32         System.out.println("sb.capacity():" + sb.capacity());
33         System.out.println("sb.length():" + sb.length());
34         System.out.println("--------------------------");
35
36         // public StringBuffer(int capacity):指定容量的字符串缓冲区对象
37         StringBuffer sb2 = new StringBuffer(50);
38         System.out.println("sb2:" + sb2);
39         System.out.println("sb2.capacity():" + sb2.capacity());
40         System.out.println("sb2.length():" + sb2.length());
41         System.out.println("--------------------------");
42
43         // public StringBuffer(String str):指定字符串内容的字符串缓冲区对象
44         StringBuffer sb3 = new StringBuffer("hello");
45         System.out.println("sb3:" + sb3);
46         System.out.println("sb3.capacity():" + sb3.capacity());
47         System.out.println("sb3.length():" + sb3.length());
48     }
49 }

运行的结果如下:

时间: 2024-11-10 15:09:22

Java基础知识强化38:StringBuffer类之StringBuffer的构造方法的相关文章

Java基础知识强化09:String、StringBuffer和StringBuilder使用

1. 对于三者使用的总结: (1).如果要操作少量的数据用 = String               (2).单线程操作字符串缓冲区下操作大量数据 = StringBuilder (3).多线程操作字符串缓冲区下操作大量数据 = StringBuffer 2. (1)String : 指向的是一个不可改变的字符串,要的说, String 类型和 StringBuffer 类型的主要性能区别其实在于 String 是不可变的对象, 因此在每次对 String 类型进行改变的时候其实都等同于生成

java基础知识回顾之javaIO类--管道流PipedOutputStream和PipedIutputStream

管道流(线程通信流):管道流的主要作用是可以进行两个线程间的通讯,分为管道输出流(PipedOutputStream).管道输入流(PipedInputStream),如果想要进行管道输出,则必须要把输出流连在输入流之上.如图所示: 1.管道输入流应该连接到管道输出流 ,输入流和输出流可以直接连接       2.使用多线程操作,结合线程进行操作.通常由某个线程从管道输入流中(PipedInputStream)对象读取.          并由其他线程将其写入到相应的端到输出流中.不能使用单线程

java基础知识回顾之javaIO类--RandomAccessFile类

java.io 类 RandomAccessFile java.lang.Object java.io.RandomAccessFile1.该类不是IO流中的子类.2.该类既能读又能写.3.该对象内部分装了一个字节数组,通过指针可以操作数组中的元素.4.其实该对象就是将字节输入流和输出流进行了封装.5.该对象只能对文件操作,目的和源只能是文件对象.通过看构造方法可以看得出来.RandomAccessFile(File file, String mode) RandomAccessFile(Str

java基础知识回顾之javaIO类--File类应用:获取指定目录下面的指定扩展名的文件,将文件的绝对路径写入到目的文件当中

/** * File文件综合应用 * 需求:获取指定目录下面,指定扩展名的文件,将文件的绝对路径写到文本文件当中. *  * 思路:1.需要深度遍历.--递归 * 2.遍历的过程中过滤指定扩展名的文件--过滤器FileNameFilter,将文件存入容器中 * 3.将容器中的内容遍历,写入到指定文件中 * */ 代码:  FilenameFilter 过滤器: package com.lp.ecjtu.File.filter; import java.io.File; import java.i

java基础知识回顾之javaIO类--内存操作流ByteArrayInputStream和ByteArrayOutputSteam(操作字节数组)

直接看代码: package cn.itcast.io.p6.bytestream; import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.IOException; public class ByteArrayStreamDemo { /** * @param args * @throws IOException * 特点 * 1.内存操作流 * 2.不操作底层资源,不调

java基础知识回顾之javaIO类--File类应用:删除带内容的目录

/** * 深度删除一个带内容的目录 * 原理:必须从里往外删除,需要深度遍历 * @author Administrator * */ public class FileDeleteList { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub File dir = new File("E:\\复件 demodir"); removedir(

java基础知识回顾之javaIO类--File类应用:递归深度遍历文件

代码如下: package com.lp.ecjtu.File.FileDeepList; import java.io.File; public class FileDeepList { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub File dir = new File("E:"+File.separator+"demodir

java基础知识回顾之javaIO类--File类应用:过滤器接口FilenameFilter和FileFilter

FilenameFilter和FileFilter都是用来过滤文件,例如过滤,以.jpg或者.java结尾的文件,通过看他们的源码:通过使用File类中String[] list(FilenameFilter filter)或者public File[] listFiles(FileFilter filter)方法,把FilenameFilter或者FileFilter接口对象作为参数传入,通过实现接口里面的 boolean accept(File dir, String name) 或者boo

java基础知识回顾之javaIO类--File类

File类是对文件系统中文件以及目录(文件夹)进行封装的对象,可以通过面向对象的思想来操作文件和目录(文件夹).File类保存文件或目录的各种元素的信息,包括文件名,文件长度,最后修改日期,是否可读,获取当前文件的路径名,判断指定文件是否存在,获得当前文件的列表,创建.删除文件目录等方法. /**     * 构造方法:File f = new File("file.txt");//file.txt 相对路径     *       File f1 = new File("c