Do not append char as strings

Metadata

ID: java-best-practices/sb-append-char

Language: Java

Severity: Warning

Category: Best Practices

Description

Do not append a string with single character to a StringBuffer. Instead, append a character type. This is better practice and results in better performance. While this is negligible if the operation occurs once, it has performance impact if done at scale.

Learn More

Non-Compliant Code Examples

public class Main{
    public static void main(String[] args){
        StringBuffer sb = new StringBuffer();
        sb.append("a");
        sb.append("abc");

        while (true) {
            sb.append("a");
        }

        for (Element e: elements) {
            sb.append("a");
        }

        if (true) {
            sb.append("a");
        } else {
            sb.append("a");
        }
    }
}

Compliant Code Examples

public class Main{
    public static void main(String[] args){
        StringBuffer sb = new StringBuffer();
        sb.append('a');
        sb.append("<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.0//EN\" ");
    }
}