如何转换对象';在Java中将属性值添加到数组中?

如何转换对象';在Java中将属性值添加到数组中?,java,arrays,object,java-8,Java,Arrays,Object,Java 8,假设我有,一个对象列表,如:- [id = 1, age = 34, name = "abc"] [id = 2, age = 34, name = "xyz"] [id = 3, age = 34, name = "mno"] 然后我需要将它们转换为:- [1], [34], [abc], [2], [34], [xyz], [3], [34], [mno] 在这种情况下,您可以使用流和方法: publicstaticvoidma

假设我有,一个对象列表,如:-

[id = 1, age = 34, name = "abc"]
[id = 2, age = 34, name = "xyz"]
[id = 3, age = 34, name = "mno"]
然后我需要将它们转换为:-

[1], [34], [abc],
[2], [34], [xyz],
[3], [34], [mno]

在这种情况下,您可以使用流和方法:

publicstaticvoidmain(字符串[]args){
MyClass obj=新的MyClass(1,50,“John”);
MyClass obj2=新的MyClass(2,30,“Michał”);
List=Arrays.asList(obj,obj2);
List all=List.stream()
.map(o->Arrays.asList(o.getId(),o.getAge(),o.getName())
.flatMap(集合::流)
.collect(Collectors.toList());
all.forEach(element->System.out.println(element));
}
公共静态类MyClass{
私有最终int id;
私人最终年龄;
私有最终字符串名;
公共MyClass(整数id、整数年龄、字符串名称){
this.id=id;
这个。年龄=年龄;
this.name=名称;
}
public int getId(){return id;}
public int getAge(){return age;}
公共字符串getName(){return name;}
}

比如说,你有一个班上的人:

package stack.overflow.atest;
公共阶层人士{
int-id;
智力年龄;
字符串名;
公众人物(整数id、整数年龄、字符串名称){
this.id=id;
这个。年龄=年龄;
this.name=名称;
}
}
从Java 8开始,您可以执行以下操作:

列表结果=流
.of(新人(1,23,“aaa”)、新人(2,34,“bbb”))
.flatMap(p->Stream.of(p.id,p.age,p.name))
.collect(Collectors.toList());
System.out.println(“结果:+result”);
这将产生:

result: [1, 23, aaa, 2, 34, bbb]
您可以将每个对象转换为其字段数组
Object[]
,如下所示:

publicstaticvoidmain(字符串[]args)引发异常{
列出人(
新人(1,34,“abc”),
新人(2,34,“xyz”),
新人士(3,34,“mno”);
对象[][]arr=people.stream()
.map(人物->新对象[]{
person.getId()、person.getAge()、person.getName()
}).toArray(对象[]:[]::新建);
//输出
Arrays.stream(arr.map)(Arrays::toString.forEach(System.out::println);
//[1,34,abc]
//[2,34,xyz]
//[3,34,mno]
}
静态类人物{
int-id;
智力年龄;
字符串名;
公众人物(整数id、整数年龄、字符串名称){
this.id=id;
这个。年龄=年龄;
this.name=名称;
}
public int getId(){return id;}
public int getAge(){return age;}
公共字符串getName(){return name;}
}

您希望阵列是什么类型的<代码>字符串?对象是否始终为特定的已知类型?或者对象类型不一定总是事先知道的?需要什么样的数组?是[1,34,“abc”,2,34,“xyz”,3,34,“mno”]?请描述您使用的对象和数组表示法。例如,如果您指的是JSON,请使用JSON语法。对象类型并不总是已知的。