繁体   English   中英

有没有办法在 Java 中实现类型安全的向量?

[英]Is there a way to implement a type-safe vector in Java?

我正在尝试使用 Java 为我的编码分配实现一个向量。 我想将有关向量维度的信息放入其类型中,以使我的代码更安全。

我试图将向量表示为int[n] ,但以下代码未编译。

public static int[n] createVector(int n) {
    return new int[n];
}

编译的output:

src\Main.java:59: error: ']' expected
    public static int[n] createVector(int n) {
                      ^
src\Main.java:59: error: ';' expected
    public static int[n] createVector(int n) {
                       ^
src\Main.java:59: error: invalid method declaration; return type required
    public static int[n] createVector(int n) {
                         ^
3 errors

我认为问题在于 java 中的所有 int arrays 具有相同的类型,我无法对其进行专门化。

有没有办法在 Java 中做到这一点?

你将如何处理不同维度的向量? 这是一种类型还是不同类型的类型

 class Vector<T> { private final int dimension; private T[] elements; public Vector(Class<T> clazz, int dimension) { this.dimension = dimension; this.elements = (T[]) Array.newInstance(clazz, dimension); } // any useful methods here }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM