java - 将 Java 对象转换为对象列表

标签 java spring

我正在尝试将 java 对象转换为对象列表。我当前的对象是 ff。

@Data
@AllArgsConstructor
@NoArgsConstructor
@JsonIgnoreProperties(ignoreUnknown = true)
@JsonNaming(PropertyNamingStrategy.UpperCamelCaseStrategy.class)
public final class GetCreditCardInfo {

    @JsonAlias("ns:return")
    private List<CreditCardDetails> details;

    @JsonAlias("ns:return")
    private CreditCardDetails detailsObject;

}

上面的代码的作用是获取响应中的对象或对象列表。如果详细信息变量根本没有值,我计划将对象转换为对象列表。

我这样做是因为我们的南向 API 会抛出一个对象或对象列表,如下所示。

enter image description here

对于我现有的实现,我只想将对象转换为列表,以便 API 抛出对象响应。我现有的对象列表实现仍然有效,因为抛出对象的 api 仍将在我的 API 中被读取为单个对象列表。有没有办法将我的对象转换为对象列表?

最佳答案

tl;博士

List.of( myCreditCardDetails )

列表

Java 9及更高版本提供了几个方便的List.of List 上的方法用于实例化unmodifiable list的接口(interface).

要创建包含单个对象的不可修改列表:

List< CreditCardDetails > list = List.of( myCreditCardDetails ) ;

要创建一个空的不可修改列表:

List< CreditCardDetails > list = List.of() ;

要创建包含多个对象的不可修改列表:

List< CreditCardDetails > list = List.of( aliceCreditCardDetails , bobCreditCardDetails , carolCreditCardDetails , davisCreditCardDetails ) ;

根据 What is the maximum of number of arguments for varargs in java?,您最多可以传递大约 64,000 个元素.

要从数组创建不可修改的列表:

List< CreditCardDetails > list = List.of( arrayOfCreditCardDetailsObjects ) ;

要从可修改列表复制不可修改列表,请调用 List.copyOf .

List< CreditCardDetails > list = List.copyOf( otherModifiableList ) ;

关于java - 将 Java 对象转换为对象列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69811558/

相关文章:

java - 在运行时更改表 - Spring API Rest

Spring 在没有 @Autowired 注释的构造函数中注入(inject)依赖项

Java Swing GUI Try/Catch block

java - 使用模型映射器进行外键映射

java - Spring ConversionService 添加转换器

android - Spring RestTemplate : post both an image and an object at the same time

java - 相同的类(class)类型转换?

java - 在内存运行时创建了多少个对象?

Java HashMap 分配的大小

java - 用于渲染 JSON 的 Spring 模板引擎