Java之JsonArray⽤法讲解需求:
java中split的用法四个字符串:
"[\"HDC-51\"]",
"[\"HDC-51\", \"HDC-55\"]",
"[\"HDC-50\", \"HDC-55\", \"HDC-55-2\"]",
"[\"HDC-51\", \"HDC-55\", \"HDC-55-2\",\"HDC-21N\"]",
分别向四个字符串中添加String macType ="HDC-50" ,
并判断字符串中各个元素是否与macType相同, 相同则不添加, 不相同则添加.
最后输出四个字符串,要求格式同开始字符串格式⼀致.
思路:
这是不是普通的字符串, ⽽是json格式的字符串,
所以在判断的时候, 可以选择将多个字符串转成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\", \"HDC-55-2\"]");
contentList.add("[\"HDC-51\", \"HDC-55\", \"HDC-55-2\",\"HDC-21N\"]");
System.out.println(contentList);
String macType ="HDC-50";
for (String content : contentList) {
//去掉content 中的中括号
String contentStr1 = placeAll("[\\[\\]]", "");
List<String> content1= Arrays.asList(contentStr1.split(","));
List<String> list = new ArrayList<>();
for (String string : content1) {
list.add(string);
}
/
/判断content中是否已经包含macType
boolean flag = false;
for (String string : list) {
//去掉字符串的引号
String str= place("\"", "");
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 = String();
System.out.println(newContent);
}
}
}
结果:
⽅法⼆: 使⽤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\", \"HDC-55-2\"]");
contentList.add("[\"HDC-51\", \"HDC-55\", \"HDC-55-2\",\"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 (!ains(macType)) {
contentArray.add(macType);
}
System.out.println("contentArray后 : " + contentArray);
} catch (Exception e) {
e.printStackTrace();
}
}
}
}
控制台输出:
到此这篇关于Java之JsonArray⽤法讲解的⽂章就介绍到这了,更多相关Java之JsonArray⽤法内容请搜索以前的⽂章或继续浏览下⾯的相关⽂章希望⼤家以后多多⽀持!
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论