ホームページ  >  記事  >  Java  >  JavaのStringBuilder.capacity()関数を使用して文字列バッファの容量を取得します。

JavaのStringBuilder.capacity()関数を使用して文字列バッファの容量を取得します。

王林
王林オリジナル
2023-07-24 11:15:22818ブラウズ

StringBuilder は Java で一般的に使用される文字列操作クラスであり、文字列を操作するための一連のメソッドを提供します。多くのシナリオでは、文字列を結合する必要があり、多くの場合、文字列の長さを変更する必要があります。文字列操作を効率的に実行するために、Java は String クラスを置き換える StringBuilder クラスを提供します。

StringBuilder クラスは、内部で文字配列を使用して文字列の内容を保存します。この文字配列には初​​期容量があります。文字列の長さがその容量を超えると、StringBuilder は自動的に容量を拡張します。頻繁な拡張操作を避けるために、初期容量を手動で設定してメモリ使用量を削減し、パフォーマンスを向上させることができます。 StringBuilderのcapacity()関数で文字列バッファの容量を取得できます。

次に、StringBuilder クラスを使用したコード例を示します。

public class StringBuilderExample {
    public static void main(String[] args) {
        StringBuilder sb = new StringBuilder();
        
        // 打印初始容量
        System.out.println("初始容量:" + sb.capacity());
        
        // 添加字符串
        sb.append("Hello");
        
        // 打印容量
        System.out.println("添加 Hello 后的容量:" + sb.capacity());
        
        // 继续追加字符串
        sb.append("World");
        
        // 打印容量
        System.out.println("添加 World 后的容量:" + sb.capacity());
        
        // 再次追加字符串
        sb.append("Java is awesome!");
        
        // 打印容量
        System.out.println("添加 Java is awesome! 后的容量:" + sb.capacity());
    }
}

この例では、最初に StringBuilder オブジェクト sb を作成します。初期状態ではStringBuilderの容量は16です。 Capacity() 関数を呼び出すことで、初期容量を取得できます。

次に、append() 関数を使用して、文字列を sb オブジェクトに追加します。追加するたびに、capacity() 関数を通じて現在の容量を取得できます。 「Hello」を付けると定員は16名となります。 「World」を追加すると容量は16になります。 「Javaはすごい!」を付けると容量は34になります。この例から、文字列の長さが元の容量を超えると StringBuilder が自動的に拡張されることがわかります。

初期容量を手動で設定することで、展開の数を減らすことができ、それによってコードのパフォーマンスと効率が向上します。実際の開発では、多数の文字列を接続する必要がある場合、最初に文字列の推定全長に基づいて初期容量を設定できます。これにより、頻繁な展開操作を効果的に回避できるため、コードの実行効率が向上します。

要約すると、StringBuilder クラスの Capacity() 関数を使用すると、文字列バッファの容量を取得できます。この関数を使用すると、コードを記述するときに文字列をより効率的に操作できるとともに、メモリ使用量が削減され、コードの実行効率が向上します。実際の開発では、より優れたパフォーマンスを得るために、特定のビジネス シナリオに応じて適切な初期容量を選択する必要があります。

以上がJavaのStringBuilder.capacity()関数を使用して文字列バッファの容量を取得します。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。