微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

数组常量只能在初始化器错误中使用

如何解决数组常量只能在初始化器错误中使用

| 考虑:
public proj 3 {

    static string [][]Item;

    public static void main(String [] args){

        Item[][] = {
             {\"BH,\",\"Backhoe,\"200.00\"},{\"ER,\"Electric Rake,\"10.00\"},{\"EL,\"Electric Lawnmower,\"15.00\"},{\"TR,\"Trencher\",\"35.00\"},{\"MU,\"Mulcher,\"20.00\"},{\"TS,\"Tree Sprayer,\"22.00\"},{\"CP,\"cider Press,\"30.00\"},{\"PR,\"Pruner,\"12.00\"},{\"GE,\"Gas Edger,{\"RO,\"Roller,\"8.00\"},
我该如何做才能从其他方法调用数组?     

解决方法

        这意味着您必须像这样初始化它:
public class Proj3{

    public static String [][] Item = {
              {\"BH,\",\"Backhoe,\"200.00\"},{\"ER,\"Electric Rake,\"10.00\"},{\"EL,\"Electric Lawnmower,\"15.00\"},{\"TR,\"Trencher\",\"35.00\"},{\"MU,\"Mulcher,\"20.00\"},{\"TS,\"Tree Sprayer,\"22.00\"},{\"CP,\"Cider Press,\"30.00\"},{\"PR,\"Pruner,\"12.00\"},{\"GE,\"Gas Edger,{\"RO,\"Roller,\"8.00\"}
         };

public static void main(String [] args){
     ...
}
如果要使用数组初始化器,则不能拆分声明和赋值。     ,        您有两种选择: 在声明中
private static String[][] item = {...};
要么 在其他地方使用
new
关键字
private static String[][] item = new String[][]{...}
另外,您需要将
public proj
更改为
public class
    ,        我不确定100%是否正确理解了您的意思,但是您可以通过完全限定它来引用静态类成员。
public class MyClass {
  // static class member
  public static String myStaticArray;

  // non-static class method
  public void myMethod() {
    MyClass.myStaticArray = {...}; // do stuff
  }
}
    ,        您可以像这样全局地声明多维数组:
String [][] 2DArray;
然后在main方法中进行如下初始化:
 2DArray = new String[][] {
                {\"array_element_0\",\"array_element_1\"},{\"array_element_2\",\"array_element_3\"},...
            };
    ,        如果您的目标是:1.在某处声明它; 2.在其他地方初始化它; 3.仍要使用{...}格式。 这将起作用:
public proj 3 {

    static string [][]Item;

    public static void main(String [] args) {

        string[][] _Item = {
             {\"BH,\"8.00\"}
        };
        Item = _Item;
    

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。