Java之JsonArray用法講解
阿新 • • 發佈:2021-08-12
需求:
四個字串: "[\"HDC-51\"]","[\"HDC-51\",\"HDC-55\"]","[\"HDC-50\",\"HDC-55\",\"HDC-55-2\"]",\"HDC-55-2\",\"HDC-21N\"]",分別向四個字串中新增String macType ="HDC-50",並判斷字串中各個元素是否與macType相同,相同則不新增,不相同則新增. 最後輸出四個字串,要求格式同開始字串格式一致.
思路:
這是不是普通的字串,而是on格式的字串,所以在判斷的時候,可以選擇將多個字串轉成jsonArray格式
延伸:
通常我們在中,一個欄位儲存多個字串的資料,一般以json格式存入,更新資料的時候,使用jsonArray轉化更方便
方法一: 普通方式,不使用jsonArray
public class Test { public static void main(String[] args) { List<String> contentList = new ArrayList<>(); contentList.add("[\"HDC-51\"]"); contentList.add("[\"HDC-51\",\"HDC-55\"]"); contentList.add("[\"HDC-50\",\"HDC-55-2\"]"); contentList.add("[\"HDC-51\",\"HDC-21N\"]"); System.out.println(contentList); String macType ="HDC-50"; for (String content : contentList) { //去掉content 中的中括號 String contentStr1 = content.replaceAll("[\\[\\]]",""); List<String> content1= Arrays.asList(contentStr1.split(",")); List<String> list = new ArrayList<>(); http://www.cppcns.comfor (String string : content1) { list.add(string); } //判斷content中是否已經包含macType boolean flag = false; for (String string : list) { //去掉字串的引號 String str= string.replace("\"",""hPSZw); if (macType.equals(str)) { flag = true; break; } } //如果沒有macType,則新增 if (flag == false) { StringBuilder sb = new StringBuilder(); String macTypeStr = sb.append("\"").append(macType).append("\"").toString(); list.add(macTypeStr); } String newContent = list.toString(); System.out.println(newContent); } } }
結果:
方法二: 使用JsonArray
public class Test {
public static void main(String[] args) {
List<String> contentList = new ArrayList<&ghPSZwt;();
contentList.add("[\"HDC-51\"]");
contentList.add("[\"HDC-51\",\"HDC-21N\"]");
System.out.println(contentList);
String macType ="HDC-50";
for (String content : contentList) {
try {
JSONArray contentArray = JSONArray.parseArray(content);
//System.out.println("contentArray前 : " + contentArray);
if (!contentArray.contains(macType)) {
contentArray.add(macType);
}
System.out.println("cohttp://www.cppcns.comntentArray後 : " + contentArray);
} catch (Exception e) {
e.printStackTrace();
}
}
}
}
控制檯輸出:
到此這篇關於之JsonArray用法講解的文章就介紹到這了,更多相關Java之JsonArray用法內容請搜尋我們以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援我們!