为了在 Java 中检索 JSON 结构,我使用了 GSON。 我创建了一个 DataList 类来保存整数列表的列表。为什么?我解释: 我稍后会在我的代码中成对使用日期(这是一个列表)。我可能需要不止一对日期(那是另一个列表)。年、月和日作为整数列表(最后一个列表!)提供。 像那样:
...
"$date": [[[2015,3,27],[2015,4,1]]]
...
为了保存 Json 的这一部分,我在我的类中使用了这个变量:
public List<List<List<Integer>>> $date = new ArrayList<List<List<Integer>>>();
问题: 如何将 $date 变量转换为:
public List<List<String>> $dateFORMATED = new ArrayList<List<String>>();
将字符串中的最后一个列表连接成始终为 8 个字符的字符串? (如果日期是 2015、1、2,它将是“20150102”) 额外:它甚至是处理这个问题的最佳方法吗?
最佳答案
您的主要问题似乎是从 Integer
数组创建 Java Date
对象。可以这样处理:
List<Integer> rawDate;
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("dd/MM/yyyy");
String stringDate = rawDate.get(2) + "/" + rawDate.get(1) + "/" + rawDate.get(0);
Date date = simpleDateFormat.parse("25/12/2010");
编辑
我看错了,你真的希望你的日期是一个字符串。我必须说我不太明白你想做什么。您的 JSon 结构很奇怪,应该基于对象,而不是文字数组的数组。
无论如何,我想这是一种做你想做的事的方法:
String stringDate = rawDate.get(2) + String.format("%02d", rawDate.get(1)) + String.format("%02d", rawDate.get(0));
关于Java - 使用连接的最后一级嵌套列表创建新变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29722173/