首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >模型提供程序中的颤振搜索

模型提供程序中的颤振搜索
EN

Stack Overflow用户
提问于 2021-04-28 17:35:47
回答 1查看 20关注 0票数 0

几天后它不起作用,我合并了模型上的数据,最初的例子:三星有很多数据,我已经将它组合成一个数组,我想问一下如何根据模型的品牌名称进行搜索?

代码语言:javascript
运行
复制
@override
  Widget build(BuildContext context) {
    remoteModelId.clear();
    isLoading = true;
    final products = Provider.of<List<Brands>>(context);
    return Scaffold(
        ...
        body: products != null
            ? ListView.separated(
                itemCount: products.length,
                itemBuilder: (context, index) {
                  
                  var lol = [];
                  var idModel = [];
                  var sublist = [].join();
                  var countList =[];
                  //var allList =[];
                 
                  //var subLol = lol.indexOf(lol);
                  for(var ok in products){
                    lol.add(ok.brandName);
                    idModel.add(ok.ids);
                     countList.add(lol);
                    if(lol.contains(lol)){
                      sublist.compareTo(lol[index]);
                      break;
                    }
                    
                  }
                  distinctIds = lol.toSet().toList();
                  hasilakhir = Set.of(distinctIds).toList();
                  newDataList = List.from(distinctIds);
                  templist.add(hasilakhir);
                  
                  final myMap = Map();
                  
                  lol.forEach((element) { 
                    if(!myMap.containsKey(element)){
                      myMap[element] = 1;
                      return false;
                    }else{
                      myMap[element] += 1;
                      return false;
                    }
                  });
                  //newDataList = newDataList.map((brand)=>brand.toLowerCase()).toList();                
                  return ListTile(
                    title: Text(hasilakhir[index]),

谢谢

EN

回答 1

Stack Overflow用户

发布于 2021-04-29 17:13:22

我不确定您需要什么,但以下是一些示例代码:

代码语言:javascript
运行
复制
  // Get products with a specific brandName
  print(
      'Number of Samsung=${products.where((p) => p.brandName == 'Samsung').length}');

  // Count products by brandName - like your code
  final map = Map();
  products.forEach((product) {
    if (!map.containsKey(product.brandName)) {
      map[product.brandName] = 1;
    } else {
      map[product.brandName] += 1;
    }
  });
  print('map=$map');
  
  // Group products by brandName, with the count and list of ids
  final map2 = Map();
  products.forEach((product) {
    if (!map2.containsKey(product.brandName)) {
      map2[product.brandName] = {
        'count': 1,
        'ids': [product.ids]
      };
    } else {
      var current = map2[product.brandName];
      current['count']++;
      current['ids'].add(product.ids);
    }
  });
  print('map2=$map2');

我的测试数据的输出是:

代码语言:javascript
运行
复制
Number of Samsung=3
map={Samsung: 3, Apple: 3}
map2={Samsung: {count: 3, ids: [S1, S2, S3]}, Apple: {count: 3, ids: [iPhone1, iPhone2, iPhone3]}}

我不知道它是否有用,但我已经在下面注释了您的一些代码:

代码语言:javascript
运行
复制
  // Get list of distinct brandNames
  var distinctIds = lol.toSet().toList();
  // Get list of distinct brandNames - same as distinctIds
  var hasilakhir = Set.of(distinctIds).toList();
  // Copy list distinctIds
  var newDataList = List.from(distinctIds);
  List templist = [];
  // Make a list with one element which is the list of brandNames
  templist.add(hasilakhir);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67297605

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档