有没有办法创建一个标签,以便在编译器运行时用java中的语句替换该标签



很抱歉措辞不佳。我有一个字符串数组列表,每个索引对应于一个类别。例如 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();
  }
}

最新更新