当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Java Length和Capacity的区别用法及代码示例


在 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


相关用法


注:本文由纯净天空筛选整理自jhimlic1大神的英文原创作品 Difference Between Length and Capacity in Java。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。