flutter - 如何将项目添加到 Flutter 中的自定义列表?

标签 flutter

我知道将整数添加到整数列表是:

List<int> myList = [];
myList.add(1);
我知道将字符串添加到字符串列表是:
List<String> myList = [];
myList.add("Hello World");
但是如何将一个集合添加到我的自定义列表中?
Class MyList {
  String name;
  int price;

MyList({
  this.name,
  this.price,
 });
}
我希望 myList 最后是这样的:
List<MyList> myList = [
  MyList(
    name: 'Chorizo Canapes',
    price: 12.99,
  ),
  MyList(
    name: 'Cucumber',
    price: 8.99,
  ),
  MyList(
    name: 'Eggs',
    price: 11.99,
  ),
];
提前致谢。
编辑:对不起,我没有说清楚。我想做这样的事情:
List<MyList> myList = [];
myList.add({name: 'patato', price: 10})
我该怎么做呢?

最佳答案

那么有什么问题呢?您可以创建此类,也可以创建此列表。正是你想要的。
请注意:

  • 重写“类”=>“类”
  • 将“价格”从 int 更改为双倍(如 Richard Heap 所说)
  • 不要忘记将您的类文件导入到您创建列表的文件中,如下所示:'import 'package:project/myList.dart';'

  • 工作代码:
    class MyList {
      String name;
      double price;
    
    MyList({
      this.name,
      this.price,
     });
    }
    
    List<MyList> myList = [
      MyList(
        name: 'Chorizo Canapes',
        price: 12.99,
      ),
      MyList(
        name: 'Cucumber',
        price: 8.99,
      ),
      MyList(
        name: 'Eggs',
        price: 11.99,
      ),
    ];
    
    更新:您也可以将类构造函数中的参数标记为“@required”(添加“import 'package:flutter/widgets.dart';”)以使此参数绝对必需。
    例子:
    import 'package:flutter/widgets.dart';
    
    class MyList {
      String name;
      double price;
    
    MyList({
      @required this.name,
      this.price,
     });
    }
    
    List<MyList> myList = [
      MyList(
        name: 'Chorizo Canapes',
        price: 12.99,
      ),
      MyList(//Error: need parameter "name"
        price: 8.99,
      ),
      MyList(
        name: 'Eggs',
        price: 11.99,
      ),
    ];
    
    Upd2:要创建自己的列表,您可以编写
        List<MyList> myList2 = List<MyList>();
        myList2.add(
          MyList(
            name: 'Chorizo Canapes',
            price: 12.99,
          ),
        );
    
    或者
        List<MyList> myList3 = [];
        myList3.add(
          MyList(
            name: 'Cucumber',
            price: 8.99,
          ),
        );
    

    关于flutter - 如何将项目添加到 Flutter 中的自定义列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64320846/

    相关文章:

    dart - 类型 'Future<dynamic>' 不是类型 'Future<int>' 的子类型 flutter 数据库创建异常

    android - 位置参数必须出现在命名参数之前,并且 flutter 上的位置参数太多

    flutter - 是否可以在dart中使用C++之类的模板参数?

    ios - iOS 部署目标 'IPHONEOS_DEPLOYMENT_TARGET' 设置为 8.0,在 Flutter 中如何更改最小 IOS Deploying Target

    Flutter :How to solve flutter_svg pub get failed error?

    android - Flutter:我们检测到您的应用在您的 1 个或多个 app bundle 或 APK 的 list 文件中包含 requestLegacyExternalStorage 标志

    flutter - 在构建期间更新值时使用 Flutter Provider 时出现问题

    Flutter Listview 问题在顶部添加项目

    flutter - 如何从带有 flutter 的TimeOfDay以AM或PM格式显示时间?

    android - Flutter Listview 无法滚动不显示所有列表