很抱歉措辞不佳。我有一个字符串数组列表,每个索引对应于一个类别。例如 list.get(i)[1] 将始终保存一个名称。我想要的是在我的代码中输入 NAME,当我编译时,它会自动用该语句替换 NAME。我很确定我以前见过这个,但是当我搜索它时我找不到任何东西。
你不能在 Java 中这样做。你说的是C宏,它在Java中是不存在的。但是,您可以创建一个执行类似操作的包装器对象。下面是一个示例:
public class MyData {
private List<String[]> internalData;
public MyData(List<String[] internalData) {
this.internalData = internalData;
}
public getName(int index) {
return internalData.get(index)[1];
}
public getAddress(int index) { // For example
return internalData.get(index)[2];
}
// Here, expose any methods of List that you need, such as size()
// So you can use a for loop correctly
public int size() {
return internalData.size();
}
}