- Java.lang 包类
- Java.lang - 首页
- Java.lang - Boolean
- Java.lang - Byte
- Java.lang - Character
- Java.lang - Character.Subset
- Java.lang - Character.UnicodeBlock
- Java.lang - Class
- Java.lang - ClassLoader
- Java.lang - Compiler
- Java.lang - Double
- Java.lang - Enum
- Java.lang - Float
- Java.lang - InheritableThreadLocal
- Java.lang - Integer
- Java.lang - Long
- Java.lang - Math
- Java.lang - Number
- Java.lang - Object
- Java.lang - Package
- Java.lang - Process
- Java.lang - ProcessBuilder
- Java.lang - Runtime
- Java.lang - RuntimePermission
- Java.lang - SecurityManager
- Java.lang - Short
- Java.lang - StackTraceElement
- Java.lang - StrictMath
- Java.lang - String
- Java.lang - StringBuffer
- Java.lang - StringBuilder
- Java.lang - System
- Java.lang - Thread
- Java.lang - ThreadGroup
- Java.lang - ThreadLocal
- Java.lang - Throwable
- Java.lang - Void
- Java.lang 包额外内容
- Java.lang - 接口
- Java.lang - 错误
- Java.lang - 异常
- Java.lang 包有用资源
- Java.lang - 有用资源
- Java.lang - 讨论
Java StringBuffer ensureCapacity() 方法
Java StringBuffer ensureCapacity() 方法用于验证 StringBuffer 对象的容量是否至少等于指定的最小值。如果当前容量小于参数值,则会分配一个具有更大容量的新内部数组。新容量是以下两者中较大的一个:
minimumCapacity 参数。
旧容量的两倍,加 2。
如果 minimumCapacity 参数为非正数或负数,则此方法不执行任何操作。
ensureCapacity() 方法接受一个整数参数,该参数保存最小容量值。在确保容量等于指定的最小值或不等于指定的最小值时,它不会抛出异常。
语法
以下是 Java StringBuffer ensureCapacity() 方法的语法:
public void ensureCapacity(int minimumCapacity)
参数
minimumCapacity − 这是所需的最小容量。
返回值
此方法不返回值。
示例:增加 StringBuffer 的容量
如果当前容量大于参数值,ensureCapacity() 方法将分配一个具有更大容量的新内部数组。
在下面的程序中,我们使用值“Hello”实例化 StringBuffer。然后,使用 ensureCapacity() 方法,我们尝试检查容量是否等于最小容量。由于容量大于参数值,因此该方法将分配一个具有更大容量的新内部数组。
public class Capacity { public static void main(String[] args) { //instantiate a StringBuffer StringBuffer sb = new StringBuffer("Hello"); System.out.println("The string is: " + sb); //get the capacity of string System.out.println("The old capacity of string is: " + sb.capacity()); //initialize the minimum capacity int minimumCapacity = 15; //using the ensureCapacity() method sb.ensureCapacity(minimumCapacity); System.out.println("The new capacity is: " + sb.capacity()); } }
输出
执行上述程序后,将产生以下结果:
The string is: Hello The old capacity of string is: 21 The new capacity is: 21
示例:增加 StringBuffer 的容量
如果当前容量小于参数值,ensureCapacity() 方法将生成新的容量,该容量为旧容量的两倍,加 2。
在这个程序中,我们创建一个值为“Java”的 StringBuffer 对象。使用 ensureCapacity() 方法,我们尝试检查新容量是否等于最小容量。由于当前容量小于参数值,因此该方法将生成新的容量,该容量为旧容量的两倍,加 2。
public class Capacity { public static void main(String[] args) { //instantiate a StringBuffer StringBuffer sb = new StringBuffer("Hello"); System.out.println("The string is: " + sb); //get the capacity of string System.out.println("The old capacity of string is: " + sb.capacity()); //initialize the minimum capacity int minimumCapacity = 40; //using the ensureCapacity() method sb.ensureCapacity(minimumCapacity); System.out.println("The new capacity is: " + sb.capacity()); } }
输出
以下是上述程序的输出:
The string is: Hello The old capacity of string is: 21 The new capacity is: 44
示例:使用无效输入增加 StringBuffer 的容量
如果 minimumCapacity 参数为非正数,则此方法不执行任何操作,只返回旧容量。
在下面的程序中,我们使用值“TutorialsPoint”实例化 StringBuffer。然后,使用 ensureCapacity() 方法,我们尝试检查新容量是否等于最小容量。由于最小容量值为负数,因此此方法不执行任何操作,只返回旧容量。
public class Capacity { public static void main(String[] args) { //instantiate a StringBuffer StringBuffer sb = new StringBuffer("TutorialsPoint"); System.out.println("The string is: " + sb); //get the capacity of string System.out.println("The old capacity of string is: " + sb.capacity()); //initialize the minimum capacity with 0 int minimumCapacity = 0; //using the ensureCapacity() method sb.ensureCapacity(minimumCapacity); System.out.println("The new capacity is: " + sb.capacity()); } }
输出
上述程序产生以下结果:
The string is: TutorialsPoint The old capacity of string is: 30 The new capacity is: 30