有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

“}”在Java中应为错误,但它已经存在

我正试图用Java创建一个多维数组,我已经正确地设置了它,但是在最后,当已经有一个数组的时候,它会说“{”,这是代码中的错误行

{
"Gerald Field", "U18", "Male", "Bourges", "14.01", "26.59","50.05"
};

有什么建议可以解决这个问题吗

编辑:

在这一行之前是数组的其余部分和编码:

import javax.swing.JOptionPane;

public class CMS_Program
{
   public CMS_Program()
      {
         String[][] names = new String[][]
            {
               { Array here

所有的{也在最后关闭


共 (4) 个答案

  1. # 1 楼答案

    你的问题仍然缺少很多背景知识。无论如何,aString[][]的直接初始化基本上应该按如下方式进行:

    String[][] names = new String[][] {
        { "Gerald Field", "U18", "Male", "Bourges", "14.01", "26.59", "50.05" },
        { "Gerald Field", "U18", "Male", "Bourges", "14.01", "26.59", "50.05" },
        { "Gerald Field", "U18", "Male", "Bourges", "14.01", "26.59", "50.05" },
        { "Gerald Field", "U18", "Male", "Bourges", "14.01", "26.59", "50.05" },
        { "Gerald Field", "U18", "Male", "Bourges", "14.01", "26.59", "50.05" }
    };
    

    但是,最好使用List<Person>类,其中Person类如下所示

    public class Person {
        private String name;
        private String id; // ??
        private Gender gender;
        private String city; // ???
        private Double time; // Or so?
        // ...
        // Add/generate c'tor/getter/setter/equals/hashcode and other boilerplate.
    }
    

    这样你就可以

    List<Person> persons = new ArrayList<Person>();
    persons.add(new Person("Gerald Field", "U18", Gender.MALE, "Bourges", 14.01, 26.59, 50.05));
    // ...
    

    只需处理真实的对象/实体,不要在底层处理复杂的数组。您的代码将变得更加自我记录,并且更易于维护

  2. # 2 楼答案

    这是有效的:

    String[][] names = new String[][]
                                    {
                                       {
                                               "Gerald Field", "U18", "Male", "Bourges", "14.01", "26.59","50.05"
                                       }
                                    };
    

    我看不出这和你的消息来源有什么不同

  3. # 3 楼答案

    {}是数组的开始和结束符号,,用于分隔数组中的元素。。 如果创建多维数组(基本上是数组的数组),则需要使用{..}对于声明的数组,以及其中的任何元素,因为它们也是数组

    所以,用这样的方法:

    String[][] myMultiDimensionalArray = new String[][]
     {
       {
         "Gerald Field", "U18", "Male", "Bourges", "14.01", "26.59","50.05"
       },
       {
         "Name Lastname", "U18", "Male", "Bourges", "14.01", "26.59","50.05"
       }
     }
    

    这个错误试图说明的是,它只看到了一个维度,并且让它相信会有两个维度

  4. # 4 楼答案

    看起来你正在这样做:

    String[][] names = new String[][]
                {
                    {
                      "Gerald Field", "U18", "Male", "Bourges", "14.01", "26.59","50.05"
                    };
    

    请注意,缺少一个结尾“}” 如果右大括号没有丢失,那么分号必须在第二个右大括号之后,而不是第一个右大括号之后