indexOf 是红色下划线

indexOf is red underlined

我尝试在我的代码中使用 indexOf,但是 indexOf 有红色下划线,我不知道为什么...

这是我的功能:

  void test() {
     indexx = dateArrayTest.indexOf(formattedDate);
  }

这是我的进口商品:

import 'package:flutter/material.dart';
import 'package:fitnessapp2/main.dart';
import 'package:intl/intl.dart';

这是我使用的变量:

  int formattedDate = int.parse(DateFormat('yyyyMMddkkmm').format(date));
  var indexx;
  var dateArrayTest = {
    202201011940,
    202201011941,
    202201011942,
    202201011943,
    202201011944,
    202201011945,
    202201011946,
    202201011947,
  };

我需要再次导入吗?

您的问题是您的 dateArrayTest 被声明为 Set<int>,它没有 indexOf 方法,因为索引无法请求 Set 的元素.

如果您需要 indexOf 方法,您需要使用 [] 而不是 {}dateArrayTest 声明为 List<int>:

  var dateArrayTest = [
    202201011940,
    202201011941,
    202201011942,
    202201011943,
    202201011944,
    202201011945,
    202201011946,
    202201011947,
  ];