Reformat una matriz de cadenas

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];
    }
}

Supongo que te gusta

Origin http://43.154.161.224:23101/article/api/json?id=222909&siteId=1
Recomendado
Clasificación