我目前正在编写一个文本编辑器.我有一个完整的GUI工作,现在我正在尝试增加它的可用性.
出于某种原因,当我尝试创建一个名为symbols的数组时,NetBeans很好用 - 当我尝试为数组赋值时,NetBeans不会编译我的程序,而是会出错并建议它数组的新类.
示例代码:
String[] symbols = new String[42]; symbols[0] = "?"; // Error line!
Run Code Online (Sandbox Code Playgroud)
这是一张图片:http://img401.imageshack.us/img401/4844/examplegx.png
有谁知道解决这个问题的解决方案还是发生在你身上?如果我需要提供更多细节,请告诉我.
您试图直接在类声明中添加任意语句,而不是在方法,构造函数或初始化程序块中.你不能这样做.
一些选择:
在构造函数中执行:
public GUI()
{
symbols[0] = "?";
}
Run Code Online (Sandbox Code Playgroud)在初始化程序块中执行此操作:
String[] symbols = new String[42];
{
symbols[0] = "?";
}
Run Code Online (Sandbox Code Playgroud)在初始化程序调用的方法中执行此操作:
String[] symbols = getDefaultSymbols();
private static String[] getDefaultSymbols()
{
String[] ret = new String[42];
ret[0] = "?";
return ret;
}
Run Code Online (Sandbox Code Playgroud)使用数组初始值设定项:
String[] symbols = { "?", null, null, null, ... };
Run Code Online (Sandbox Code Playgroud)请注意,您的问题的措辞就好像Netbeans应该受到指责.它不是Netbeans - 它是Java语言规则.您的代码在Eclipse,javac,IntelliJ等下无效.