Comparando valores largos usando Collections.sort (objeto)

Estoy tratando de ordenar una lista simple de objetos por un largo: el siguiente no funciona porque una de las cadenas largas se empuja hacia arriba simplemente porque comienza con un número más bajo. Así que estoy buscando una forma de ordenarlos por los valores largos reales directamente

La implementación actual de obj se parece a la siguiente. En la clase que estoy usando, llamo Collections.sort (árboles);

public class Tree implements Comparable<Tree> {
    public String dist; //value is actually Long

    public int compareTo(Tree o) {
        return this.dist.compareTo(o.dist);
    }
}

Respuestas a la pregunta(6)

Su respuesta a la pregunta