这是我的代码
LDAPAttributeSet attributeSet = new LDAPAttributeSet();
String rolesName;
String uniquemem[] = rolesName.split(",");
if (uniquemem.length == 1)
attributeSet.add(new LDAPAttribute("uniqueMember",
new String[] { "cn="+uniquemem[0]}));
if (uniquemem.length == 2)
attributeSet.add(new LDAPAttribute("uniqueMember",
new String[] {
"cn=" +uniquemem[0],
"cn=" + uniquemem[1]
}));
if (uniquemem.length == 3)
attributeSet.add(new LDAPAttribute("uniqueMember",
new String[] {
"cn=" + uniquemem[0]
,
"cn=" + uniquemem[1]
,
"cn=" + uniquemem[2]
}));
我尝试在forloop中使用List<String>
和StringBuffer
来动态添加/追加内容,但它只接受String []。
请帮我解决这个问题
我试过这个
StringBuffer sb=new StringBuffer()
for(int i=0;i<uniquemem.length;i++)
{
sb.append("cn=" + uniquemem[i]);
}
attributeSet.add(new LDAPAttribute("uniqueMember",sb.toString()));
答案 0 :(得分:2)
您可以像这样更改现有的uniqemem
数组
for(int i=0;i<uniquemem.length;i++)
{
uniquemem[i] = "cn=" + uniquemem[i];
}
attributeSet.add(new LDAPAttribute("uniqueMember", uniquemem));
答案 1 :(得分:1)
这将为您提供所需的String数组:
ArrayList<String> memList = new ArrayList<>(uniquemem.length);
for(int i = 0; i < uniquemem.length; i++) {
memList.add("cn=" + uniquemem[i]);
}
memList.trimToSize();
memList.toArray(String[0]);
String[] memArray = memList.toArray(new String[memList.size()]);
答案 2 :(得分:1)
这个怎么样..
LDAPAttributeSet attributeSet = new LDAPAttributeSet();
String rolesName;
String uniquemem[] = rolesName.split(",");
String item = null;
String arrayItems[uniquemem.length]
for(int i=0; i<uniquemem.length; i++) {
item = "cn=" + uniquemem[i];
arrayItems[i] = item;
}
attributeSet.add(new LDAPAttribute("uniqueMember", arrayItems);