【发布时间】:2014-08-05 00:22:18
【问题描述】:
我在磁盘上保存了一个 JSON 文件,如下所示:
{
"author": [
"Mario Vargas Llosa",
"Maria Duenas",
"Liviu Rebreanu",
"Liviu Rebreanu"
],
"nameBook": [
"Eroul discret",
"Iubirile croitoresei",
"Ion",
"Ion"
],
"priceBook": [
34,
28,
40,
40
],
"publisherBook": [
"Humanitas",
"Polirom",
"Humanitas",
"Dacia"
],
"idBook": [
1,
2,
3,
4
]
}
然后我有以下Java代码:
// read the json file
FileReader reader = new FileReader(filePath);
JSONParser jsonParser = new JSONParser();
JSONObject jsonObject = (JSONObject) jsonParser.parse(reader);
// get a String from the JSON object
JSONArray idBookJ = (JSONArray) jsonObject.get("idBook");
JSONArray nameBookJ = (JSONArray) jsonObject.get("nameBook");
JSONArray authorJ = (JSONArray) jsonObject.get("author");
JSONArray publisherBookJ = (JSONArray) jsonObject.get("publisherBook");
JSONArray priceBookJ = (JSONArray) jsonObject.get("priceBook");
现在我需要使用冒泡排序对publisherBook 标记中的内容按字母顺序排序,在单词的第一个字母之后。我知道这不是最令人惊奇的编程挑战,但我被困在将 JSONArray 中的字符串视为...字符串。
【问题讨论】:
-
您想按照什么标准进行排序?那应该比较什么来确定排序顺序?
-
条件应该是单词的第一个字母。
-
什么词?作者、出版商、价格、ID 或(书)名称?此外,您可能应该将书籍属性的集合转换为 Java Book 对象(因为您将每个属性都放在单独的 JSON 数组中)。
-
如前所述,仅适用于“publisherBook”。抱歉,英语不是我的母语。
-
确实,这是我的问题:如何将其转换为可用的 Java 表单?
标签: java json sorting bubble-sort