"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Como comparar de maneira confiável strings de versão em java?

Como comparar de maneira confiável strings de versão em java?

Postado em 2025-02-06
Navegar:240

How to Reliably Compare Version Strings in Java?

comparando strings de versão em java

comparar strings de versão requer uma abordagem especializada, pois uma comparação de string convencional pode falhar em contabilizar a release de pontos e Zeros líder. Para resolver isso, é necessário um método padronizado para comparar os números da versão com precisão. Esta classe deve analisar a string de versão em partes individuais separadas por períodos. versão de string privada; // ... @Override public int compareto (versão que) { // ... } }

No método compareto, as partes da versão de ambos os objetos podem ser comparadas na sequência e o resultado retornado com base no resultado da comparação. &&&]

versão a = nova versão ("1.1"); Versão b = nova versão ("1.1.1"); int comparonResult = a.compareto (b); // -1 (a public class Version implements Comparable { private String version; // ... @Override public int compareTo(Version that) { // ... } }

Recursos adicionais:

Essa abordagem não apenas fornece uma comparação confiável, mas também suporta funcionalidades adicionais, como determinar as versões mínima e máxima de uma lista.

list versions = new ArrayList (); versions.add (nova versão ("2")); versions.add (nova versão ("1.0.5")); versions.add (nova versão ("1.01.0")); versions.add (nova versão ("1.00.1")); Versão minversion = collection.Min (versões) .get (); // retorna "1.0.0.1" Versão maxversion = collection.max (versions) .get (); // retorna "2"
public class Version implements Comparable {

    private String version;

    // ...

    @Override
    public int compareTo(Version that) {
        // ...
    }
}

Nota:

é importante considerar casos especiais em que as versões podem ter números diferentes de peças, usar zeros líderes ou conter não-numéricos caracteres. O manuseio robusto de tais cenários garante comparações precisas.

Tutorial mais recente Mais>

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3