我有一个具有两个属性“名称”和“年龄”的自定义类“学生”。
在我的主要方法中,我创建了这个自定义类的列表List,并向List添加了4个Student对象。
我的问题是,如何使用对象的任何属性获得对象之一的索引?
例如,如何获取Student('Dido',18)的索引?
void main() {
List<Student> studentsList = [];
studentsList.add(Student('Jack', 16));
studentsList.add(Student('Tamer', 17));
studentsList.add(Student('Dido', 18));
studentsList.add(Student('Lili', 15));
}
class Student{
String name;
int age;
Student(this.name, this.age);
}
最佳答案
您可以使用indexWhere
以下代码已在Dardpad中进行了测试
完整的代码
import 'dart:async';
import 'dart:io';
import 'dart:core';
import 'dart:convert';
import 'dart:html';
class Student{
String name;
int age;
Student(this.name, this.age);
}
main() {
List<Student> studentsList = [];
studentsList.add(Student('Jack', 16));
studentsList.add(Student('Tamer', 17));
studentsList.add(Student('Dido', 18));
studentsList.add(Student('Lili', 15));
int index = studentsList.indexWhere((st) => st.name=='Dido' && st.age==18);
print(index);
}