如何通过存储在字符串中的名称访问 class 的对象?
how to access a class's object by its name which is stored in a String?
我想select一个对象在class中按其名称存储在一个变量中。这可行吗?所以基本上占位符的语法 -magic_syntax-
或任何其他方法如何实现。
const String kListNames = {'list1', 'list2'};
class MyClass {
List<int> list1 = [0, 1, 2];
List<bool> list2 = [true, false];
}
main() {
List<dynamic> myList;
MyClass myClass;
for (var listName in kListNames) {
myList = myClass.-magic_syntax-(listName);
}
}
Dart 是一种编译时语言。无法按照您建议的方式通过变量名称与变量进行交互。
为什么不将数据存储在地图中?
Map<String, List> myData = {
'list1': [0, 1, 2],
'list2': [true, false],
}:
for(final listName in myData.keys) {
...
}
现在您可以遍历数据键 myData.keys
、值 myData.values
或两者 myData.entries
我想select一个对象在class中按其名称存储在一个变量中。这可行吗?所以基本上占位符的语法 -magic_syntax-
或任何其他方法如何实现。
const String kListNames = {'list1', 'list2'};
class MyClass {
List<int> list1 = [0, 1, 2];
List<bool> list2 = [true, false];
}
main() {
List<dynamic> myList;
MyClass myClass;
for (var listName in kListNames) {
myList = myClass.-magic_syntax-(listName);
}
}
Dart 是一种编译时语言。无法按照您建议的方式通过变量名称与变量进行交互。
为什么不将数据存储在地图中?
Map<String, List> myData = {
'list1': [0, 1, 2],
'list2': [true, false],
}:
for(final listName in myData.keys) {
...
}
现在您可以遍历数据键 myData.keys
、值 myData.values
或两者 myData.entries