Java 判断英文星期几:if-else 语句实现及 JUnit 测试
以下是使用 Java 语言编写的程序代码,实现对输入的大写字母和小写字母进行判断并返回正确的英文星期几单词:
public class WeekdayChecker {
public static String getWeekday(char uppercase, char lowercase) {
if (uppercase == 'M' || uppercase == 'm') {
return "Monday";
} else if (uppercase == 'W' || uppercase == 'w') {
return "Wednesday";
} else if (uppercase == 'F' || uppercase == 'f') {
return "Friday";
} else if (uppercase == 'T' || uppercase == 't') {
if (lowercase == 'u' || lowercase == 'U') {
return "Tuesday";
} else if (lowercase == 'h' || lowercase == 'H') {
return "Thursday";
}
} else if (uppercase == 'S' || uppercase == 's') {
if (lowercase == 'a' || lowercase == 'A') {
return "Saturday";
} else if (lowercase == 'u' || lowercase == 'U') {
return "Sunday";
}
}
return "Invalid input";
}
}
上述代码中,getWeekday方法接收两个参数uppercase和lowercase,分别代表大写字母和小写字母。根据输入的第一个字母和周几英文单词的第一个大写字母进行判断,如果无法根据第一个大写字母判断,则继续根据输入的第二个小写字母进行判断,最终返回正确的英文周几单词。
然后,使用 JUnit 框架编写测试类,并使用assertEquals方法判断期望结果值和实际返回值是否一致。
import org.junit.Test;
import static org.junit.Assert.assertEquals;
public class WeekdayCheckerTest {
@Test
public void testMonday() {
assertEquals("Monday", WeekdayChecker.getWeekday('M', 'm'));
}
@Test
public void testTuesday() {
assertEquals("Tuesday", WeekdayChecker.getWeekday('T', 'u'));
}
@Test
public void testWednesday() {
assertEquals("Wednesday", WeekdayChecker.getWeekday('W', 'w'));
}
@Test
public void testThursday() {
assertEquals("Thursday", WeekdayChecker.getWeekday('T', 'h'));
}
@Test
public void testFriday() {
assertEquals("Friday", WeekdayChecker.getWeekday('F', 'f'));
}
@Test
public void testSaturday() {
assertEquals("Saturday", WeekdayChecker.getWeekday('S', 'a'));
}
@Test
public void testSunday() {
assertEquals("Sunday", WeekdayChecker.getWeekday('S', 'u'));
}
@Test
public void testInvalidInput() {
assertEquals("Invalid input", WeekdayChecker.getWeekday('X', 'x'));
}
}
在测试类中,编写了最少的测试数据满足语句覆盖测试的要求。每个测试方法使用了不同的输入参数,通过assertEquals方法判断期望结果值和实际返回值是否一致。如果一致,则测试通过;如果不一致,则测试失败。
以上就是使用 Java 语言的 if-else 判断语句编写程序代码,并使用 JUnit 框架编写测试类对程序代码进行测试的方法。
原文地址: https://www.cveoy.top/t/topic/pgZu 著作权归作者所有。请勿转载和采集!