有 Java 编程相关的问题?

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

java将内容添加到浮点数组的末尾,如下所示

嘿,伙计们,我有下面的浮点数组

         public static float camObjCoord[] = new float[] {



             -2.0f, -1.5f,  -6.0f,
              2.0f, -1.5f,  -6.0f,
             -2.0f,  1.5f,  -6.0f,
              2.0f,  1.5f,  -6.0f,

             -2.0f, -1.5f, -10.0f,
             -2.0f,  1.5f, -10.0f,
              2.0f, -1.5f, -10.0f,
              2.0f,  1.5f, -10.0f,

             -2.0f, -1.5f,  -6.0f,
             -2.0f,  1.5f,  -6.0f,
             -2.0f, -1.5f, -10.0f,
             -2.0f,  1.5f, -10.0f,

              2.0f, -1.5f, -10.0f,
              2.0f,  1.5f, -10.0f,
              2.0f, -1.5f,  -6.0f,
              2.0f,  1.5f,  -6.0f,

             -2.0f,  1.5f,  -6.0f,
              2.0f,  1.5f, -6.0f,
             -2.0f,  1.5f, -6.0f,
              2.0f,  1.5f, -10.0f,

             -2.0f, -1.5f,  -6.0f,
             -2.0f, -1.5f, -10.0f,
              2.0f, -1.5f,  -6.0f,
              2.0f, -1.5f, -10.0f,



                 -2.0f,  2.5f,  -6.0f,
                  2.0f,  2.5f,  -6.0f,
                 -2.0f,  4.5f,  -6.0f,
                  2.0f,  4.5f,  -6.0f,

                 -2.0f,  2.5f, -10.0f,
                 -2.0f,  4.5f, -10.0f,
                  2.0f,  2.5f, -10.0f,
                  2.0f,  4.5f, -10.0f,

                 -2.0f,  2.5f,  -6.0f,
                 -2.0f,  4.5f,  -6.0f,
                 -2.0f,  2.5f, -10.0f,
                 -2.0f,  4.5f, -10.0f,
                                      2.0f,  2.5f, -10.0f,
                  2.0f,  4.5f, -10.0f,
                  2.0f,  2.5f,  -6.0f,
                  2.0f,  4.5f,  -6.0f,

                 -2.0f,  4.5f,  -6.0f,
                  2.0f,  4.5f, -6.0f,
                 -2.0f,  4.5f, -6.0f,
                  2.0f,  4.5f, -10.0f,

                 -2.0f,  2.5f,  -6.0f,
                 -2.0f,  2.5f, -10.0f,
                  2.0f,  2.5f,  -6.0f,
                  2.0f,  2.5f, -10.0f,
        };

我有一个方法,我想在数组的末尾添加值,但它告诉我它找不到camObjCoord,知道为什么吗


共 (3) 个答案

  1. # 1 楼答案

    它可能不是告诉您找不到变量,而是不允许您向数组中添加项。数组是固定长度的;如果需要类似于数组的可扩展数据结构,请使用ArrayList。或者,最初使用需要的大小定义数组

  2. # 2 楼答案

    一些要点:

    • Java中的数组是固定长度的对象。一旦创建数组,就不能修改其长度。
      • 您可以创建另一个大小为N+1数组,复制所有N元素,然后添加额外的元素,但添加单个元素是一个成本高昂、效率极低的O(N)操作
    • 根据数字中的名称、格式和模式,看起来每3float就是一个3D点。您应该认真考虑定义一个Point3D自定义类型来保存数据
    • 有效的Java第二版,更喜欢列表而不是数组;你应该考虑一个^ {< CD6> }
    • 除非您有充分的理由使用float,否则您应该使用double
  3. # 3 楼答案

    无法添加到数组,因为数组的大小无法更改。因此,要么使用集合结构,要么创建一个更大的数组,将旧值复制到新值,并用新值填充结尾处的空白

    但这不是问题所在-您将能够访问阵列

    • 与来自同一类的camObjCoord
    • 来自同一包中的类的MyClass.camObjCoord(假设MyClass是包含camObjCoord
    • 如果该类导入MyClass,则从另一个包中的类使用MyClass.camObjCoord