题目
修复功能
我创建了这个函数,为传递给它的任何数字添加五个并返回新值。它不会抛出任何错误,但会返回错误的数字。
你能帮我修一下这个功能吗?
public class Solution {
public static int addFive(int num) {
int total = num + 5;
return num;
}
}
测试用例:
import org.junit.Test;
import static org.junit.Assert.assertEquals;
import org.junit.runners.JUnit4;
public class SolutionTest {
@Test
public void testAddFive() {
assertEquals(10, Solution.addFive(5));
}
@Test
public void testAddZero() {
assertEquals(5, Solution.addFive(0));
}
@Test
public void testAddNegativeFive() {
assertEquals(0, Solution.addFive(-5));
}
@Test
public void testRandom() {
for (int i = 0; i < 50; i++) {
int rand = (int)(Math.random() * 1000) + 1;
assertEquals(rand+5, Solution.addFive(rand));
}
}
}
解题
My:
public class Solution {
public static int addFive(int num) {
return num += 5;
}
}
Other:
class Solution {
static int addFive(final int num) {
return num + 5;
}
}
后记
我在想我怎么一开始想到的是+=而不是+。
网友评论