Java8のStreamでPOJOのフィールド名を配列にする方法
POJOのフィールド名をArrays.streamメソッドで配列にする方法です。
以下の従業員クラスがあるとします。
package jp.co.confrage; import lombok.Getter; import lombok.Setter; @Getter @Setter public class Emp { private String name; private Integer age; }
Stream APIのtoArrayメソッドでtoArray(String[]::new);
とすることでString型の配列を返すことができます。
以下は従業員クラスのフィールド一覧を配列に格納した例です。
package jp.co.confrage; import java.util.Arrays; public class SampleMain { public static void main(String[] args) { String[] fields = Arrays.stream(Emp.class.getDeclaredFields()) .map(e -> e.getName()) .toArray(String[]::new); for(String field :fields) { System.out.println(field); } } }
KHI入社して退社。今はCONFRAGEで正社員です。関西で140-170/80~120万から受け付けております^^
得意技はJS(ES6),Java,AWSの大体のリソースです
コメントはやさしくお願いいたします^^
座右の銘は、「狭き門より入れ」「願わくは、我に七難八苦を与えたまえ」です^^
コメント