在 Java 中,长度和容量是两个不同的东西。当字符附加到字符串时,长度本质上会增加,而当当前容量超出新长度时,容量会增加。
length()方法是Java String类的一部分。它用于查找字符串的长度。它本质上计算字符串中存在的字符数。因此该方法返回一个整数。整数只不过是字符数。它还将空格计为字符。它是仅应用于字符串对象的最终变量。
用法:
public int length ()
例子:
Java
// Java Program to demonstrate
// the length function
public class length_string {
public static void main(String args[])
{
String s = "GeeksforGeeks Java";
System.out.println("String length " + s.length());
// Output is String length 18
}
}
输出
String length 18
该capacity()方法是StringBuffer类的一部分。它本质上表示可用于存储新字符的空间量。该方法返回字符串缓冲区的当前容量。默认情况下,空StringBuffer包含16个字符的容量。因此,当添加新字符时,输出将返回字符长度+16。
用法:
public int capacity
Difference Between Length and Capacity
S. 否 | 长度 | 容量 |
---|---|---|
1. | 它是 String 类的一部分。 | 它是 StringBuffer 类的一部分。 |
2. | 它用于查找字符串的长度。 | 它用于查找 StringBuffer 的容量。 |
3. | 默认情况下,空字符串的长度为0。 | 默认情况下,空字符串缓冲区包含 16 个字符的容量。 |
4. | 它是当前存储的字符串的实际大小。 | 这是目前可以容纳的最大尺寸。 |
5. | 只需计算字符数即可计算长度。 | 容量可以通过计算字符数并加 16 来计算。 |
6. | 将元素从一个数组复制到另一个数组时考虑长度 | 复制元素时不考虑容量。 |
7. | 只能通过从数组中删除元素来修改长度 | 可以通过重新分配内存来增加容量。 |
示例 1:文件名为capacity_example.java
Java
// Java Program to demonstrate
// the capacity function
public class capacity_example {
public static void main(String args[])
{
StringBuffer s = new StringBuffer();
System.out.println("capacity:" + s.capacity());
// The output is capacity:16 (because default capacity is 16)
}
}
输出
capacity:16
示例 2:文件名为capacity_example.java
Java
// Java Program to demonstrate
// the capacity function
public class capacity_example {
public static void main(String args[])
{
StringBuffer s = new StringBuffer("Gfgstring");
System.out.println("capacity:" + s.capacity());
// The output is capacity:25 (because 16+9 where
// length of Gfgstring is 9)
}
}
输出
capacity:25
相关用法
- Java Level equals()用法及代码示例
- Java Level getLocalizedName()用法及代码示例
- Java Level getName()用法及代码示例
- Java Level getResourceBundleName()用法及代码示例
- Java Level hashCode()用法及代码示例
- Java Level intValue()用法及代码示例
- Java Level parse()用法及代码示例
- Java Level toString()用法及代码示例
- Java List sort()用法及代码示例
- Java List spliterator()用法及代码示例
- Java List toArray()用法及代码示例
- Java ListIterator add()用法及代码示例
- Java ListIterator hasNext()用法及代码示例
- Java ListIterator hasPrevious()用法及代码示例
- Java ListIterator next()用法及代码示例
- Java ListIterator nextIndex()用法及代码示例
- Java ListIterator previous()用法及代码示例
- Java ListIterator previousIndex()用法及代码示例
- Java ListIterator remove()用法及代码示例
- Java ListIterator set()用法及代码示例
- Java LineNumberInputStream available()用法及代码示例
- Java LineNumberInputStream getLineNumber()用法及代码示例
- Java LineNumberInputStream mark()用法及代码示例
- Java LineNumberInputStream reset()用法及代码示例
- Java LineNumberInputStream setLineNumber()用法及代码示例
注:本文由纯净天空筛选整理自jhimlic1大神的英文原创作品 Difference Between Length and Capacity in Java。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。