每日一练74——Java Kata Twist示例(8kyu)

2018-08-14  本文已影响0人  砾桫_Yvan

题目

这是示例kata的简单转折(在学习如何创建自己的kata时由Codewars提供)。

将值“codewars”添加到数组websites1,000次。

String[] websites = {};
return websites;

测试用例:

import org.junit.Test;
import static org.junit.Assert.assertEquals;

public class KataExampleTwistTest {   
    @Test
    public void test(){
      String[] websites = KataExampleTwist.kataExampleTwist();
      assertEquals("The array is still empty", true, websites.length > 0);
      assertEquals("The array does not equal 1,000", true, websites.length == 1000);
      boolean allCodewars = true;
      for (int i = 0; i < websites.length; i++) if (!"codewars".equals(websites[i])) allCodewars = false;
      assertEquals("Every element in the array must contain the value \"codewars\"", true, allCodewars);
    }
}

解题

My

public class KataExampleTwist
{
    public static String[] kataExampleTwist()
    {
        String[] websites = new String[1000];
        for (int i = 0; i < 1000; i++) {
            websites[i] = "codewars";
        }
        return websites;
    }
}

Other

import java.util.*;

public class KataExampleTwist
{
    public static String[] kataExampleTwist()
    {
        String[] websites = new String[1000];
        Arrays.fill(websites,"codewars");
        return websites;
    }
}
import java.util.Collections;

public class KataExampleTwist {
  public static String[] kataExampleTwist() {
    return Collections.nCopies(1000, "codewars").toArray(new String[0]);
  }
}

后记

又学到 Arrays.fill(websites,"codewars");一招。

上一篇下一篇

猜你喜欢

热点阅读