Java 放置集合的内容<;对象>;排列
我相信这很容易。我只想将for循环之后的集合转储到类型为Java 放置集合的内容<;对象>;排列,java,Java,我相信这很容易。我只想将for循环之后的集合转储到类型为Role 这就是我得到的: Role[] hotRoles; Set <Role> roles = profile.getRoles(Section); for (Role role : roles ) { if( role.getName().contains("PART") && !role.getName().contains("READ_ONLY") )
Role
这就是我得到的:
Role[] hotRoles;
Set <Role> roles = profile.getRoles(Section);
for (Role role : roles )
{
if( role.getName().contains("PART") && !role.getName().contains("READ_ONLY") )
{
System.out.println("Role: " + role.getName());
}
}
Role[]热角色;
Set roles=profile.getRoles(节);
for(角色:角色)
{
if(role.getName()包含(“部分”)&&!role.getName()包含(“只读”))
{
System.out.println(“角色:“+Role.getName());
}
}
我想将从for循环返回的值放入hotPartRoles
谢谢……我假设您只希望打印的元素进入阵列 您必须动态地执行此操作,因为您事先不知道将有多少元素 差不多
List<Role> hotRoles = new ArrayList<Role>();
for(Role role : roles) {
if(...) {
hotRoles.add(role);
...
}
}
hotPartRoles = hotRoles.toArray(new Role[hotRoles.size()]);
List hotRoles=new ArrayList();
for(角色:角色){
如果(…){
添加(角色);
...
}
}
hotPartRoles=hotRoles.toArray(新角色[hotRoles.size()]);
我假设您只希望打印的元素进入数组
您必须动态地执行此操作,因为您事先不知道将有多少元素
差不多
List<Role> hotRoles = new ArrayList<Role>();
for(Role role : roles) {
if(...) {
hotRoles.add(role);
...
}
}
hotPartRoles = hotRoles.toArray(new Role[hotRoles.size()]);
List hotRoles=new ArrayList();
for(角色:角色){
如果(…){
添加(角色);
...
}
}
hotPartRoles=hotRoles.toArray(新角色[hotRoles.size()]);
hotRoles.size()
不是必需的,hotRoles.toArray(新角色[0])
也可以工作,数组将自动调整大小这是一个偏好问题——我更喜欢这种方法,因为它不分配然后立即丢弃长度0
的角色[]
,而且不需要反射性地分配新数组。@LouisWasserman谢谢,我从未检查过toArray()
是如何实际实现的,很高兴知道hotRoles.size()不是必需的,hotRoles.toArray(新角色[0])
也可以工作,数组将自动调整大小这是一个偏好问题——我更喜欢这种方法,因为它不分配然后立即丢弃长度为0
的角色[]
,也不需要反射性地分配新数组。@LouisWasserman谢谢,我从未检查过toArray()
是如何实际实现的,很高兴知道