Después de analizar mi archivo contiene s AttributeGet:1,16,10106,10111
Convertir <String> a la lista <Integer> directamente
Así que necesito para obtener todos los números después de punto y coma en la lista de attributeIDGet. Sé que hay varias formas de hacerlo. ¿Pero hay alguna manera de que podamos Convertir directamente List<String>
a List<Integer>
. Como el código a continuación se queja sobre el tipo no coincide, intenté hacer el Integer.parseInt, pero supongo que esto no funcionará para List. Aquí está s String.
private static List<Integer> attributeIDGet = new ArrayList<Integer>();;
if(s.contains("AttributeGet:")) {
attributeIDGet = Arrays.asList(s.split(":")[1].split(","));
}
Lo usted escribió es ef girando fecundamente sobre los valores. Pero es una solución elegante, sin embargo. Solo para agregar a eso. Con los nuevos métodos lambda. 'intList.addAll (strList.stream(). Map (Integer :: valueOf) .collect (Collectors.toList()));' – frugalcoder
O incluso strList.foreach (s-> intList.add (Integer.valueOf (s));.. – Heisenberg
avance rápido 5 años y ahora hay respuestas a continuación que el uso de Java 8 flujos de hacer esto en una línea sin necesidad de utilizar un bucle – Catfish