为了账号安全,请及时绑定邮箱和手机立即绑定

获取数组列表列表

获取数组列表列表

繁花如伊 2022-09-28 09:45:42
我想创建一个数据数组列表,并通过 Rest 点返回它。我试过这个:@Servicepublic class CardBrandsListService {    public ArrayList<String> getCardBrandsList() {        ArrayList<String> list = new ArrayList<String>();        list.add("visa");        list.add("master");        list.add("Intl Maestro");        list.add("amex");        return list;    }}休息终点:@GetMapping("/card_brand/list")    public ResponseEntity<?> getCurruncy() {        return ResponseEntity.ok(cardBrandsListService.getCardBrandsList().entrySet().stream()                .map(g -> new CardBrandsListDTO(g.getValue())).collect(Collectors.toList()));    }断续器:public class CardBrandsListDTO {    private String card_brand;    public String getCard_brand() {        return card_brand;    }    public void setCard_brand(String card_brand) {        this.card_brand = card_brand;    }}但是我得到的错误:映射数组列表的正确方法是什么?The method entrySet() is undefined for the type ArrayList<String>
查看完整描述

1 回答

?
BIG阳

TA贡献1859条经验 获得超6个赞

您的休息终端节点应如下所示:


@GetMapping("/card_brand/list")

public ResponseEntity<List<CardBrandsListDTO>> getCurruncy() {

    return ResponseEntity.ok(cardBrandsListService.getCardBrandsList().stream()

            .map(g -> new CardBrandsListDTO(g)).collect(Collectors.toList()));

您正在调用 ,用于获取 Map 对象的一组条目(您没有)。此外,在 map 函数中,您的变量是 String(因为您返回的是 ),因此您可以直接将其提供给构造函数。您也可以直接为 设置正确的类型。entrySet()gArrayList<String>ResponseEntity


更新:


您需要相应的构造函数:


public class CardBrandsListDTO {


    private String card_brand;


    public CarBrandsListDTO(String card_brand) {

        this.car_brand = car_brand;

    }


    //getter and setter

}

顺便说一句,我建议您重命名DTO(为了便于理解)以及其中的字段(遵循命名约定)


查看完整回答
反对 回复 2022-09-28
  • 1 回答
  • 0 关注
  • 80 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信