Integer.decode (String s)

Mirando la documentación para Integer.decode, no veo ninguna indicación de que binario debería funcionar. Sin embargo, Octal debería funcionar, con un prefijo de solo 0:

System.out.println(Integer.decode("010")); // Prints 8

Podría manejar un indicador binario de "0b" como este:

int value = text.toLowerCase().startsWith("0b") ? Integer.parseInt(text.substring(2), 2)
                                  : Integer.decode(text);

Código de muestra completo que muestra representaciones binarias, octales, decimales y hexadecimales de 15:

public class Test {
    public static void main(String[] args) throws Exception {
        String[] strings = { "0b1111", "017", "15", "0xf" };
        for (String string : strings) {
            System.out.println(decode(string)); // 15 every time
        }
    }

    private static int decode(String text) {
        return text.toLowerCase().startsWith("0b") ? Integer.parseInt(text.substring(2), 2)
                                     : Integer.decode(text);
    }

}
Respuesta 1

Integer.decode no puede analizar binarios, ver API. Pero el octal funciona bien, ejemplo:

int i = Integer.decode("011");
Respuesta: 2

Mi objetivo es exactamente lo que dice el título. Lo que estoy haciendo es: .stream (). FlatMap (x -> x.getTitles ()) getTitles () devuelve un LinkedList <String>, y esperaba que flatMap () hiciera el trabajo y ...

Estoy probando la nueva API de búsqueda del motor de aplicaciones para Java y tengo el siguiente código que intenta agregar ~ 3000 documentos en un índice: List <Document> documents = new ArrayList <Document> (); ...

No puedo entender esto. System.err.println (convertPdfToText (save) .split ("3 \\. 8"). Length); como se espera imprime un resultado de 3. De hecho, quiero que un usuario pueda obtener lo mismo. ...

EDITAR: en realidad estaba incorrecto. Estaba consultando la tabla cuando tenía la intención de consultar un índice que explica mi error. Sin embargo, la solución de Vikdor es válida. ORIGINAL: Tengo una mesa con un Hash-Range ...