kotlin 非空判断,转为java






if (null != config?.iBiometricDialog) {
            if (config?.iBiometricDialog!!.isShowing()) {
                config?.iBiometricDialog!!.dismiss()
                if (fingerprintCallback != null) {
                    fingerprintCallback!!.onCancel()
                }
            }
        }

我想把它转成java!
1.看不懂为啥要在if里config?.判断一次,又要在大括号里再次config?.这断代码是不是对config重复非空判断?
2.既然可以通过?.做非空判断 为啥上文包含的如下代码不写成 fingerprintCallback?.!!.onCancel()

 if (fingerprintCallback != null) {
                    fingerprintCallback!!.onCancel()
                }

如果懂kotlin和java,帮我转为java

这kotlin代码写的真丑

kotlin的 ? 操作符的意思就是java中的

if(object==null){
return;
}

而 !! 相当于java中
if(object==null){
throw runtimeException("nullException");
}

只要把?和!! 替换就可以了