iT邦幫忙

0

JAVA如何將List<>之中的日期資料,SimpleDateFormat成想要的格式並且去除重複資料

我於
List dataList = dataDao.getAll();
String.valueOf(dataList.get(0).getStime())

撈出來的資料如下
=dataList:Thu Jun 13 10:28:11 CST 2019

我想在Action裡面,把 dataList 跟 Data data 的資料都改成 YYYY-MM-DD
並且dataList得去除重複的日期

HashMap<String, Integer> map = new HashMap

for(Data data: dataList){
Date Stime = data.getStime();
String str = String.valueOf(Stime);
map.put(str, 0);
}

我想試著改Data.java 裡面的格式,但我想不到方法

@Table(name = "Data")
@XmlRootElement
@NamedQueries({
@NamedQuery(name = "Data.findAll", query = "SELECT e FROM Data e"),
@NamedQuery(name = "Data.findById", query = "SELECT e FROM Data e WHERE e.id = :id"),
@NamedQuery(name = "Data.findByStime", query = "SELECT e FROM Data e WHERE e.stime = :stime"),

肯請各位賜教了

2 個回答

1
喵凹咿唉思嗯
iT邦新手 5 級 ‧ 2019-07-22 00:51:15
最佳解答

如果透過資料庫原生的語法 (以Oracle來說, trunc跟distinct)可以在資料抽出來之前就整理完你要的資訊

如果是透過Java, 須先將日期轉成文字格式, 再去除重覆, 另外, Set的資料結構會更合適; 如果你的環境版本在Java8之後, 應該可以簡單的對List操作, 透過stream, map, discint, collect的步驟完成你的需求

0
darwin0616
iT邦新手 2 級 ‧ 2019-07-19 23:40:19

Jave date format link: Java date format

(iPadㄏㄞˊㄕˋㄉㄚˇㄅㄨˋㄔㄨㄓㄨㄥㄨㄣˊ⋯)

我要發表回答

立即登入回答