Uso de bucle para matriz de relleno con 5 cadenas dadas

Marek Ševela:

Busco una manera de llenar la matriz de cadenas en longitud de la matriz cuando se da en una función de prueba. Por ejemplo, cuando prueba da longitud 100, quiero estos 5 valores de cadena para ser impresos a lo largo de la matriz en bucle para que se imprima hasta el final. Hasta ahora he conseguido llenar la matriz con el primer 5, sin embargo, no puedo encontrar modos de hacer esto a través y prueba falla cuando se le da mayor longitud de la matriz. ¡Gracias por cualquier ayuda!

public class Sid {
    public static String howMuchILoveYou(int nb_petals) {

        String Petals[]=new String[7];
        Petals[0]="zero index"; //cannot skip this for some reason
        Petals[1]="I love you";
        Petals[2]="a little";
        Petals[3]="a lot";
        Petals[4]="passionately";
        Petals[5]="madly";
        Petals[6]="not at all";


        return Petals[nb_petals].toString();
    }
}

PRUEBA

import static org.junit.Assert.assertEquals;
import java.util.Random;
import org.junit.Test;

public class SampleTest {
    @Test
    public void test1() {
        assertEquals("I love you", Sid.howMuchILoveYou(1));
        assertEquals("a little", Sid.howMuchILoveYou(2));
        assertEquals("not at all", Sid.howMuchILoveYou(6));
        assertEquals("I love you", Sid.howMuchILoveYou(343));    //THIS ONE FAILS
    }
}
puerta trasera :

No se puede comentar lo que escribir aquí ... Según mi entendimiento, que está intentando ejecutar la matriz en el bucle.

 assertEquals("I love you", Sid.howMuchILoveYou(343));    //This will go outOfIndexBound

Su sentencia de retorno en el método devuelve el valor de índice de matriz y ya que han declarado su matriz de tamaño 7.


 return Petals[nb_petals].toString();

o bien se puede tener bucle de la matriz mediante el operador%


return Petals[(nb_petals - 1) % 6 + 1];

Supongo que te gusta

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