Java 检查按月份排序的星座
有一个网页包含按月份排序的黄道带列表,如:Java 检查按月份排序的星座,java,Java,有一个网页包含按月份排序的黄道带列表,如:(“白羊座”、“3月21日至4月19日”)、(“金牛座”、“4月20日至5月20日”)、(“双子座”、“5月21日至6月20日”)、(“癌症”、“6月21日至7月22日”)… 有一个选项可以将一些生肖添加到收藏夹中,收藏夹的星座将按排序顺序列在第一个星座上,其余的生肖也将按排序顺序列在收藏夹之后。 例如,我通过用户界面在收藏夹中添加了以下标志 ("Taurus", "April 20 - May 20"),("Libra", "September 23
(“白羊座”、“3月21日至4月19日”)、(“金牛座”、“4月20日至5月20日”)、(“双子座”、“5月21日至6月20日”)、(“癌症”、“6月21日至7月22日”)…
有一个选项可以将一些生肖添加到收藏夹中,收藏夹的星座将按排序顺序列在第一个星座上,其余的生肖也将按排序顺序列在收藏夹之后。
例如,我通过用户界面在收藏夹中添加了以下标志
("Taurus", "April 20 - May 20"),("Libra", "September 23 - October 22"),("Aquarius", "January 20 - February 18")
在UI中,它将以以下方式显示
"Taurus", "April 20 - May 20"
"Libra", "September 23 - October 22"
"Aquarius", "January 20 - February 18"
"Aries", "March 21 - April 19"
"Gemini", "May 21 - June 20"
"Cancer", "June 21 - July 22"
"Leo", "July 23 - August 22"
"Virgo", "August 23 - September 22"
"Scorpio", "October 23 - November 21"
"Capricorn", "November 22 - December 21"
"Pisces", "February 19 - March 20"
我的主要目的是验证添加的收藏夹是按月份排序的。另外,剩余的黄道带也是按月份排序的。
并从xml
文件中验证已排序的月份。将一些生肖添加到收藏夹后,我将得到一个xml
响应,其中包含生肖列表。我正在解析xml,以获得带有“3月21日-4月19日”的生肖符号
把它放在地图上
Map<String,String> ZodiacMap = new HashMap<String,String>();
还押黄道带
zodiacMap1.put("Aries", "March 21 - April 19");
zodiacMap1.put("Gemini", "May 21 - June 20");
zodiacMap1.put("Cancer", "June 21 - July 22");
zodiacMap1.put("Leo", "July 23 - August 22");
zodiacMap1.put("Virgo", "August 23 - September 22");
zodiacMap1.put("Scorpio", "October 23 - November 21");
zodiacMap1.put("Capricorn", "November 22 - December 21");
zodiacMap1.put("Pisces", "February 19 - March 20");
从地图上我需要验证最喜欢的生肖是按月份排序的,也要验证重新命名的生肖是按月份排序的
它是多么的容易…?有很多可能的方法可以做到这一点。这里有一个例子 创建一个名为
Zodiac
的类,包含以下字段:
- 名称、示例值:“双子座”
- 月份(从开始日期算起),示例值:5(对于五月)
- 文本,示例值:“5月21日至6月20日”
比较器
,它将通过月
字段比较黄道带
对象
例如:
Comparator<Zodiac> byMonthComparator = new Comparator<>() {
int compare(Zodiac o1, Zodiac o2) {
return Integer.compare(o1.month, o2.month);
}
}
SortedSet<Zodiac> all = new TreeSet<>();
all.add(new Zodiac("Gemini", 5, "May 21 - June 20");
all.add(...);
...
使用提供的逻辑u,我想我可以检查从xml响应创建的zodiacMap1的排序顺序???还有什么方法可以使用enum?您可以使用其中两个排序集,一个是“static and full”,一个是所有12个,另一个是从空开始的收藏夹。要显示,请枚举所有FAV,然后循环遍历完整集合中的所有条目,如果该条目不是FAV的成员,则显示该条目
SortedSet<Zodiac> all = new TreeSet<>();
all.add(new Zodiac("Gemini", 5, "May 21 - June 20");
all.add(...);
...