假设有一个 obj 和一个 key
var obj = {}
var key = 'exist'
最简单的判断方法是直接取值 !obj[key]
if (!obj[key]) console.log('not exist')
> not exist
这种方法如果碰到是零或null或也会成立,如果要排除只需要 typeof 属性
if (typeof obj[key] == 'undefined') console.log('not exist')
> not exist
此外也可以用 Object.的 hasOwnProperty 属性
if (!Object.hasOwnProperty(obj[key])) console.log('not exist')
> not exist
java.util.Map对象在所有key前加统一加一个标识,有什么好方法?
java.util.Map对象中包含Map和List
举个例子
新方法:
public static JSONObject transObject(JSONObject o1,String prefix){
if(o1 == null){
return null;
}
JSONObject o2=new JSONObject();
o1.forEach((key, value) -> {
if(value.getClass().toString().endsWith("JSONObject")){
o2.put(prefix+":"+key, transObject((JSONObject)value,prefix));
}else if(value.getClass().toString().endsWith("JSONArray")){
o2.put(prefix+":"+key, transArray(o1.getJSONArray(key),prefix));
}else{
o2.put(prefix+":"+key, value);
}
});
return o2;
}
public static JSONArray transArray(JSONArray o1,String prefix){
if(o1 == null){
return null;
}
JSONArray o2 = new JSONArray();
for (int i = 0; i < o1.size(); i++) {
Object jArray=o1.getJSONObject(i);
if(jArray.getClass().toString().endsWith("JSONObject")){
o2.add(transObject((JSONObject)jArray,prefix));
}else if(jArray.getClass().toString().endsWith("JSONArray")){
o2.add(transArray((JSONArray)jArray,prefix));
}
}
return o2;
}
目前所用方法
.replaceAll("(["])([^:"' ]*["][s]?:)", "$1"+prefix+":"+"$2")
原文
{
"CUST_ID": "200004343813",
"TRADE_SOURCE": [{
"WORK_ID": "ACCEPT_GRADE",
"ACCEPT_TYPE": "1"
}, {
"WORK_ID": "BOOK_FLAG",
"ACCEPT_TYPE": "0"
}, {
"WORK_ID": "PRE_ACCEPT_TAG",
"ACCEPT_TYPE": "0"
}
],
"TRADE_JUDGE_OWE_TAG": "2"
}
转换后
{
"a:CUST_ID": "200004343813",
"a:TRADE_SOURCE": [{
"a:WORK_ID": "ACCEPT_GRADE",
"a:ACCEPT_TYPE": "1"
},
{
"a:WORK_ID": "BOOK_FLAG",
"a:ACCEPT_TYPE": "0"
},
{
"a:WORK_ID": "PRE_ACCEPT_TAG",
"a:ACCEPT_TYPE": "0"
}],
"a:TRADE_JUDGE_OWE_TAG": "2"
}
java面试题有哪些?
肝了一个月的面试题终于来啦,大家开心不。
2020年最新Java面试题整理,全网最全一份,包含各个技术栈,Java基础,Java集合,多线程,Java异常,spring,spring MVC,spring boot,spring cloud,netty,dubbo,activemq,Java web,jvm,kafka,MongoDB,mybatis,MySQL,Nginx,rabbitmq,Redis,Tomcat,zookeeper,设计模式,数据结构,算法,分布式,限流,降级,cap原理等等知识点
话不多说,直接上图
总共80多个PDF
【BAT必备】计算机网络面试题:
链接:https://pan.baidu.com/s/1hFggmtdL1ZmE4utBlo8S1g 提取码:qfkh
【BAT必备】设计模式面试题
链接:https://pan.baidu.com/s/1eXJveIVvQe-m3MdvLcT-fQ 提取码:j0kx
【BAT必备】数据结构算法面试题:
链接:https://pan.baidu.com/s/1daFN9jY03fXsqwc9LeKi2w 提取码:5ab7
【BAT必备】多线程面试题:
链接:https://pan.baidu.com/s/1GdvsNESoHPBjWKN2h-iK7Q 提取码:cqib
【BAT必备】并发编程锁面试题:
链接:https://pan.baidu.com/s/1hXPPtMY2dvz-g7QcSTc3PA 提取码:zhmy
【BAT必备】tomcat面试题:
链接:https://pan.baidu.com/s/1qPZXx4lmLynmaF0XjRTzpQ 提取码:5m16
【BAT必备】zookeeper面试题:
链接:https://pan.baidu.com/s/1EhOee9e1Qe-Q6RC8KlthxA 提取码:p2am
【BAT必备】spring 全家桶面试题:
链接:https://pan.baidu.com/s/1DXGO-N5P6QIGKLZ8LIVOuQ 提取码:m9v7
【BAT必备】rocketMq面试题:
链接:https://pan.baidu.com/s/1TEF3yUR4OOaIpj-4ud_79A 提取码:3g3d
【BAT必备】redis面试题:
链接:https://pan.baidu.com/s/1qlanxWBfwvKUObnHulCQiA 提取码:rjo7
【BAT必备】rabbitMq面试题:
链接:https://pan.baidu.com/s/1ywLiq3IUJVyZosPLNrmyTA 提取码:0td4
【BAT必备】netty面试题:
链接:https://pan.baidu.com/s/1Pbv4aelqOt1dUPA2SwEB_Q 提取码:2w1e
【BAT必备】Nginx面试题:
链接:https://pan.baidu.com/s/1r8YNyOz0N6MJ9F0045lEZw 提取码:49tl
【BAT必备】MySQL面试题:
链接:https://pan.baidu.com/s/1GeX6Fs4nNi6fTUHKxJ2SZw 提取码:8pow
【BAT必备】mybatis面试题:
链接:https://pan.baidu.com/s/1xOYiaiQ2JpPt2jb6GdWjaA 提取码:aqd3
【BAT必备】MongoDB面试题:
链接:https://pan.baidu.com/s/1QTVx1TF8tDn6LUJr7wdfOQ 提取码:j1qt
【BAT必备】Linux面试题:
链接:https://pan.baidu.com/s/1veZ3dBJmz1PduCE5tl-e1A 提取码:txpf
【BAT必备】kafka面试题:
链接:https://pan.baidu.com/s/1SWhiBCswleYGsDupSGzE6g 提取码:o1gv
【BAT必备】jvm面试题:
链接:https://pan.baidu.com/s/1xi-QLq_I75kha439EGqELw 提取码:kxde
【BAT必备】java web面试题:
链接:https://pan.baidu.com/s/1r3Bupn9qhJbw5ebR_6h94A 提取码:qba4
【BAT必备】Java基础面试题:
链接:https://pan.baidu.com/s/1J40nYKIoV_VMCumoRpIyhQ 提取码:5xo7
【BAT必备】dubbo面试题:
链接:https://pan.baidu.com/s/10flnh7Tb0Oxd3yZPQOnjsA 提取码:5gc9
【BAT必备】activeMQ面试题:
链接:https://pan.baidu.com/s/1igNB64dpMCjCQkRzvqCXpQ 提取码:006a
【BAT必备】分布式相关面试题大全面试题:
链接:https://pan.baidu.com/s/1ZcpJDh07B2NPAL4_4VC6jQ 提取码:w4mw
【BAT必备】java面试题大全:
链接:https://pan.baidu.com/s/11jw0Ua4CZiI8-S6EadM_iQ 提取码:epmp
【BAT必备】Java面试汇总
链接:https://pan.baidu.com/s/1vG9_cNoiYBW5TY32S4wGnQ 提取码:k087
【BAT必备】2020年多家公司整理的350道Java面试题手册
链接:https://pan.baidu.com/s/1FEGQVTgiyKG0kCasYn-n2g 提取码:f7y1
【BAT必备】Java全部核心知识点整理
链接:https://pan.baidu.com/s/1StG-ib70TDAE1Hb4NVLQRQ 提取码:5rp1