Estoy buscando una estructura de datos Java similar a una ArrayList que cuando hago un add o un push con solo un argumento de valor, un índice me será devuelto automáticamente.ArrayList con índice devuelto en el valor de agregado
Por ejemplo:
ArrayList<String> elements = new ArrayList<String>();
String element = "foo";
String elementTwo = "bar";
int index1 = elements.add(element); //note this does not exist, i.e. returns bool in api
int index2 = elements.add(elementTwo);
System.out.println(elements.get(index1)); //would give "foo"
pude ver escribir una clase envoltura alrededor de ArrayList que administra un contador que se incrementa en cada operación de adición y la invocación:
ArrayList.add(int index, E element)
lo que realmente necesita para escribir una envoltura alrededor de ArrayList para esto? ¿Esto parece algo tan simple como para ser provisto de la caja en alguna parte?
Editar:
necesito el índice (tecla) para ser fijo y único para este caso de uso. Se sugirió un mapa y estoy de acuerdo con eso. ¿Alguien sabe de una implementación de mapa que le proporciona una clave generada automáticamente (únicamente) en una inserción de valor? Solo estoy tratando de decidir si necesito implementar mi propio contenedor para esto.
'int index1 = elements.add (element) .size() - 1'; no funcionará – keety
¿Qué pasa con 'int index1 = elements.size(); elements.add (elemento); '? – dasblinkenlight
Estoy desconcertado. ¿Por qué es tan malo escribir una segunda línea para obtener la longitud actual? – paulsm4