我已经声明了公共静态数组的名称和ID:
public static String[] name = new String[19]; public static int[] id = new int[19];
但是java compiler说:
java compiler
java:70: error: array required, but String found java:71: error: array required, but int found
我不知道怎么了 是我声明变量的方式还是写的方法?
public static boolean add(String name, int id, int i) { if (i < 20) { name[i] = name; id[i] = id; return true; } else if (i > 20) { for (int j = 0; j < id.length; j++) { if (id[j] == 0 && name[j].equals("null")) id[j] = id; name[j] = name; } return true; } else return false; }
您在静态nameString数组和name传递给该add方法的本地String变量之间发生冲突。
name
add
最好的解决方案是使用不同的名称。这将使代码更容易理解。
如果仍然坚持使用相同的名称,则可以通过使用类名称访问静态数组来解决名称冲突:
YourClassName.name[i]= name;
这同样适用于您的idint数组和idint变量。
id