Should use Map instead of Hashtable

This page is not yet available in Spanish. We are working on its translation.
If you have any questions or feedback about our current translation project, feel free to reach out to us!

Metadata

ID: java-best-practices/replace-hashtable-with-map

Language: Java

Severity: Warning

Category: Best Practices

Description

If your application does not require thread safety, it is recommended to use the modern java.util.Map interface instead of java.util.Hashtable.

Map offers efficient implementations like HashMap, which offer greater flexibility and faster execution. If thread safety is needed, you can opt for ConcurrentHashMap, which maintains thread safety while still adhering to modern coding practices associated with Map.

Non-Compliant Code Examples

public class Foo {
    void bar() {
        Hashtable hashtable1 = new Hashtable(); // consider using java.util.Map instead
        Hashtable<String, Integer> hashtable2 = new Hashtable<>();
    }
}

Compliant Code Examples

public class Foo {
    void bar() {
        Map<String, Integer> h = new HashMap<>();
    }
}
https://static.datadoghq.com/static/images/logos/github_avatar.svg https://static.datadoghq.com/static/images/logos/vscode_avatar.svg jetbrains

Seamless integrations. Try Datadog Code Analysis