Chaklad es general Ashfaq Arafa:
Me gustaría volver a formatear una matriz de cadenas en función del estado. Por ejemplo, la matriz
A = ["samsung", "chargers", "fast", "charging", "rapid", "high"]
int index = 1
Lo que significa que colindan a los artículos hasta el índice 1 con el espacio y dar formato a la matriz. Así que, finalmente, será,
A = ["samsung chargers", "fast", "charging", "rapid", "high"]
Para el índice = 2, la salida debe ser,
A = ["samsung chargers fast", "charging", "rapid", "high"]
Escribo el código que funciona, trato de encontrar más concisa (pero no bajo rendimiento) camino.
StringBuilder builder = null;
..........
int fCount = ...
// format the array to match the string
// values = ["samsung", "chargers", "fast", "charging", "rapid", "high"]
builder = new StringBuilder();
String formated = "";
for (int i = 0; i <= fCount; i++) {
builder.append(values[i]).append(" ");
}
formated = builder.toString().trim();
String[] fVaues = new String[values.length - fCount];
fVaues[0] = formated;
for (int i = 1; i < fVaues.length; i++) {
fVaues[i] = values[i+1];
}
¿Cuál es la forma más sencilla de lograrlo?
Ayrton:
Se podía bucle sobre ella, añadiendo las cuerdas a una segunda matriz:
String[] b = new String[a.length - index];
String tmp = a[0];
for(int i = 1; i < a.length; i++) {
if(i <= index) {
tmp += " " + a[i];
if(i == index) {
b[i - index] = tmp;
}
}
else {
b[i - index] = a[i];
}
}