gpt4 book ai didi

java - 字符串数组到多个对象

转载 作者:行者123 更新时间:2023-12-03 19:07:25 24 4
gpt4 key购买 nike

我有一个字符串数组

String[] weekDays

weekDays 代表星期几。例如

{1, 2, 4} means Monday, Tuesday, Thusday
{2,5,6,7} means Tuesday, Friday, Saturday, Sunday

我有七个 boolean 值代表一周中的 7 天,必须根据 weekDays 设置 true 或 false。

我的代码

private static void setWeekDays(final Object object, final String[] weekDays) {
for (String day : weekDays) {
if( day.equalsIgnoreCase("1")) {
object.setMonday(true);
} else if( day.equalsIgnoreCase("2")) {
object.setTuesday(true);
} else if( day.equalsIgnoreCase("3")) {
object.setWednesday(true);
} else if( day.equalsIgnoreCase("4")) {
object.setThrusday(true);
} else if( day.equalsIgnoreCase("5")) {
object.setFriday(true);
} else if( day.equalsIgnoreCase("6")) {
object.setSaturday(true);
} else if( day.equalsIgnoreCase("7")) {
object.setSunday(true);
}
}
}

但是它有很多 if else 语句,在执行这个之前我明确地将所有 boolean 值设置为 false。还有其他简单的方法可以做同样的事情吗?有什么建议吗??

最佳答案

我认为您可以为此尝试使用 ENUM。

例如

public enum WeekDay {
MONDAY("1");

private String value;

private WeekDay(String value) {
this.value = value;
}

public static WeekDay find(String value) {
for (WeekDay weekDay : values()) {
if (weekDay.value.equals(value)) {
return weekDay;
}
}
}

然后您可以将此 ENUM 用作 DTO 的字段。

关于java - 字符串数组到多个对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21112733/

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