尝试访问数组的某个位置时需要java“]”
我创建了一个类型为“TablasDeSimbolos”的数组,有两个位置,当我试图访问第一个位置时,它给了我一个错误。我正在使用NetBeans 8.0.2
我得到的确切信息是:
cannot find symbol
symbol: class tablaDeSimbolos
location: class Sintactico
']' expected
这是代码:
TablaDeSimbolos tablaDeSimbolosActual = null;
TablaDeSimbolos[] tablasDeSimbolos = new TablaDeSimbolos[2];
tablasDeSimbolos[0] = null; //The error it's here
还有塔拉德西姆博洛斯
public class TablaDeSimbolos {
public TablaDeSimbolos() {
}
private List<String[]> tablaSimbolos = new ArrayList<String[]>();
//Funcion que anade una entrada a la tabla de simbolos donde el lexema es el nombre de variableo funcion,
//El tipo es el tipo (entero, cadena, boolean) si es funcion el valor es null, el desplazamiento es desde donde
//empieza a escribir la variable(valor inicial 0) y el paso de parametro puede ser por VAL - VALOR o REF - REFERENCIA
public void anadirATS(String lexema, String tipo, String desplazamiento, String pasoDeParametro) {
String[] nuevaEntrada = {lexema, tipo, desplazamiento, pasoDeParametro};
tablaSimbolos.add(nuevaEntrada);
}
public boolean buscarEnTS(String entrada) {
for (int i = 0; i < tablaSimbolos.size(); i++) {
if (entrada.equals(tablaSimbolos.get(i)[1])) //Aqui obtenemos el lexema de la entrada en la tabla
{
return true; //Si lo encontramos retornamos true
}
}
return false;//Si no encontramos el lexema en la tabla entonces false
}
}
# 1 楼答案
我测试了你的代码,没有问题
但是由于以下原因,找不到符号
所以你用的是Neatbeans,所以1号不是你的问题。看来第二个问题是由第二个引起的
# 2 楼答案
我对此表示怀疑。消息说的是
tablaDeSimbolos
,而不是tablasDeSimbolos
。看起来您的变量已被拆分,编译器试图将此标记标识为类名# 3 楼答案
我发现了错误,如果没有方法,我无法访问类中的数组。 解决方案是创建数组作为类的一个属性,然后使用方法访问数组的位置并修改
谢谢你的帮助