- 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 StringBuilder ensureCapacity() 方法
Java StringBuilder ensureCapacity() 方法用于验证 StringBuilder 对象的容量是否至少等于指定的最小值。如果当前容量小于参数值,则会分配一个具有更大容量的新内部数组。新容量为以下两者中较大者:
minimumCapacity 参数。
旧容量的两倍加 2。
如果 minimumCapacity 参数为非正数或负数,则此方法不执行任何操作。
ensureCapacity() 方法接受一个整数参数,该参数保存最小容量值。在确保容量等于指定的最小值时,它不会抛出异常。
语法
以下是 Java StringBuilder ensureCapacity() 方法的语法:
public void ensureCapacity(int minimumCapacity)
参数
minimumCapacity − 这是所需的最小容量。
返回值
此方法不返回值。
示例:增加 StringBuilder 的容量
如果当前容量大于参数值,ensureCapacity() 方法将分配一个具有更大容量的新内部数组。
在下面的程序中,我们用值“Hello”实例化 StringBuilder。然后,使用 ensureCapacity() 方法,我们尝试检查容量是否等于最小容量。由于容量大于参数值,该方法将分配一个具有更大容量的新内部数组。
public class Capacity {
public static void main(String[] args) {
//instantiate a StringBuilder
StringBuilder sb = new StringBuilder("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
示例:增加 StringBuilder 的容量
如果当前容量小于参数值,ensureCapacity() 方法将生成新的容量,该容量为旧容量的两倍加 2。
在这个程序中,我们用值“Java”创建一个 StringBuilder 对象。使用 ensureCapacity() 方法,我们尝试检查新容量是否等于最小容量。由于当前容量小于参数值,该方法将生成新的容量,该容量为旧容量的两倍加 2。
public class Capacity {
public static void main(String[] args) {
//instantiate a StringBuilder
StringBuilder sb = new StringBuilder("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
示例:使用无效输入增加 StringBuilder 的容量
如果 minimumCapacity 参数为非正数,则此方法不执行任何操作,只返回旧容量。
在下面的程序中,我们用值“TutorialsPoint”实例化 StringBuilder。然后,使用 ensureCapacity() 方法,我们尝试检查新容量是否等于最小容量。由于最小容量值为负数,此方法不执行任何操作,只返回旧容量。
public class Capacity {
public static void main(String[] args) {
//instantiate a StringBuilder
StringBuilder sb = new StringBuilder("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