如下所示例代码:
public static String getUserDnsByUserIds(String userIds, String appId, String tenantId) {
//按";"对字符串进行截取
String[] ids = userIds.split(";");
StringBuffer sbf = new StringBuffer();
//遍历数组,分别拼出userDN再依次放入StringBuffer
for(int i=0 ; i<ids.length; i++){
String userDN="cn="+ids[i]+",cn=organizational users,o="+tenantId+",cn=cordys,cn=defaultInst,o="+appId+".cucueip.chinaunicomsi.cn";
sbf.append(userDN.trim()+";");
}
String userDNs=sbf.toString();
//返回userDNs
return userDNs;
}
代码问题分析:
1、代码, String[] ids = userIds.split(";");
没有判断
对象userIds是否为空,如果为空则此语句出现异常,建议增加捕获为空异常。
2、上行代码,没有判断对象 userIds是否有值,例如 userIds=""情况,则后续拼接字符串出现缺少内容的情况,未达到预计输出,建议增加捕获无值此异常。
3、代码, for(int i=0 ; i<ids.length; i++){中,“ ids.length”使用方法影响代码执行效率,建议把取值放在循环体外,例如:
int n=
ids.length;
for(int i=0 ; i<n; i++){
如有未识别出的问题,请再补充。
代码问题分析:
1、代码, String[] ids = userIds.split(";");
2、上行代码,没有判断对象 userIds是否有值,例如 userIds=""情况,则后续拼接字符串出现缺少内容的情况,未达到预计输出,建议增加捕获无值此异常。
3、代码, for(int i=0 ; i<ids.length; i++){中,“ ids.length”使用方法影响代码执行效率,建议把取值放在循环体外,例如: