如何在java中获取对象的字段作为逗号分隔的字符串或列表

问题描述 投票:0回答:1

我正在尝试以列表的形式获取对象的属性。例如:

class Sample {

  private String type;
  private String name;
  private int value;
  
  // getter-setter
}

预期输出:

{"type", "name", "value"}

有没有一种编程方式可以做到这一点?

java string list properties instance
1个回答
2
投票

您可以使用Java反射

public static String getClassProperties(Class<?> clazz) {
    return Arrays.stream(clazz.getDeclaredFields())
        .map(field -> "\"" + field.getName() + "\"")
        .collect(Collectors.joining(", ", "{", "}"));
}

使用示例:

public static void main(String[] args) {
    System.out.println(getClassProperties(Sample.class)); 
}

输出:

{“类型”,“名称”,“值”}

© www.soinside.com 2019 - 2024. All rights reserved.