gpt4 book ai didi

java - 使用循环用 5 个给定字符串填充数组

转载 作者:行者123 更新时间:2023-12-02 08:48:07 24 4
gpt4 key购买 nike

我正在寻找一种在测试函数中给出数组长度时填充字符串数组的方法。例如,当 test 给出长度 100 时,我希望在循环中的整个数组中打印这 5 个字符串值,以便打印到最后。到目前为止,我设法用前 5 个填充数组,但是,我找不到循环的方法,并且当给出更高的数组长度时测试失败。感谢您的帮助!

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();
}
}

测试

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

最佳答案

无法发表评论,所以写在这里......根据我的理解,您正在尝试在循环中执行数组。

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

方法中的 return 语句返回数组索引值,因为您已经声明了大小为 7 的数组。


return Petals[nb_petals].toString();

您可以使用 % 运算符循环数组


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

关于java - 使用循环用 5 个给定字符串填充数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60949075/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com