En C/C++tenemos memset()la función que puede cumplir con mi deseo, sino en Javacómo puedo inicializar todos los elementos a un valor específico? Siempre que escribimos int[] array=new int[10];, esto simplemente inicializa una matriz de tamaño 10 con todos los elementos iguales a cero. Solo quiero cambiar este número entero de inicialización para uno de mis arreglos. es decir, quiero inicializar una matriz que tenga todos los elementos iguales a -1. De lo contrario, tengo que poner un forbucle justo después de la inicialización, que va de índice 0a índice size-1y dentro de ese bucle, le estoy asignando un elemento -1. A continuación se muestra el código para una mayor comprensión.
int[] array = new int[10];
for (int i = 0; i < size; i++) {
array[i] = -1;
}
¿Voy correcto? ¿Hay alguna otra forma de hacer lo mismo?

Arrays.fill(). Hace la misma cosa.public static void fill(int[] a, int val) {for (int i = 0, len = a.length; i < len; i++)a[i] = val;}memsettambién se puede utilizar, y de hecho es muy útil, en matrices de enteros cuando necesita rellenar con0o-1, por ejemplo, en problemas de DP.También hay
fuente
También es posible con los flujos de Java 8:
Sin embargo, probablemente no sea la forma más eficiente de hacer el trabajo.
fuente
Stream.generate(() -> new Whatever("Hello World", 42)).limit(count).toArray();), por lo que es más flexible que Arrays.fill (). Sin embargo, no estoy seguro de la eficiencia, como dices.Podrías hacer esto si es corto:
int[] array = {-1,-1,-1,-1,-1,-1,-1,-1,-1,-1};pero eso se vuelve malo para algunos.
Más fácil sería un
forbucle:Editar: También me gusta la
Arrays.fill()opción que otras personas han mencionado.fuente
java.util.Arrays.fill ()
fuente
¿Has probado la función Arrays.fill ?
fuente
Puede utilizar
Arrays.fill(array, -1).fuente
Evidentemente, puede usar Arrays.fill (), aunque la forma en que lo ha hecho también funciona.
fuente
Arrays.fill()usa unforbucle con index0tosize-1. De la misma manera, lo que hice. Gracias por su respuesta.Uso de Java 8, puede simplemente usar
ncopiesdeCollectionsclase:En tu caso será:
Aquí hay una respuesta detallada de un caso similar suyo.
fuente
Para las listas que puede utilizar
Collections.fill(arrayList, "-")fuente