获取数组列表列表

我想创建一个数据数组列表,并通过 Rest 点返回它。我试过这个:


@Service

public 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>


繁花如伊
浏览 81回答 1
1回答

BIG阳

您的休息终端节点应如下所示:@GetMapping("/card_brand/list")public ResponseEntity<List<CardBrandsListDTO>> getCurruncy() {&nbsp; &nbsp; return ResponseEntity.ok(cardBrandsListService.getCardBrandsList().stream()&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; .map(g -> new CardBrandsListDTO(g)).collect(Collectors.toList()));您正在调用 ,用于获取 Map 对象的一组条目(您没有)。此外,在 map 函数中,您的变量是 String(因为您返回的是 ),因此您可以直接将其提供给构造函数。您也可以直接为 设置正确的类型。entrySet()gArrayList<String>ResponseEntity更新:您需要相应的构造函数:public class CardBrandsListDTO {&nbsp; &nbsp; private String card_brand;&nbsp; &nbsp; public CarBrandsListDTO(String card_brand) {&nbsp; &nbsp; &nbsp; &nbsp; this.car_brand = car_brand;&nbsp; &nbsp; }&nbsp; &nbsp; //getter and setter}顺便说一句,我建议您重命名DTO(为了便于理解)以及其中的字段(遵循命名约定)
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java