你能用Java本地添加Vector吗?

我知道java中有一个“Vector”类,但它似乎只是一个更简单的ArrayList类型的交易,而不是一个实际的数学Vector(如数量和方向)。

有没有办法在Java中进行Vector操作(特别是添加)? 或者我是不是自己不得不实施它或使用第三方模块?

-Jenny

是的,您必须编写课程或使用JScience等库

我不认为有一种内置的方法来添加矢量,但是我发现了一个系列描述了如何做到这一点。

如果你想在2d空间中制作一个矢量,你不能只用一个简单的Point2D(x,y)并让你的矢量长度定义幅度吗?

所以Point2D a = new Point2D(1,1); 幅度为1.4,NE方向。 并且Point2D b = new Point2D(2,2); 方向相同但幅度为2.8 ……

然后加法就是: Point2D c = new Point2D(ax + bx, ay + by);

在3d空间中,我会根据您的实际问题创建自己的类或完全不同的数据结构。

编辑:我希望他在过去的3年里找到了解决方案..

Java3D具有各种forms的Vector类(Vector3d,Vector3f,Vector4d等)。 当然,Java3D现在有些冒险,因为它似乎已经放弃了。

是的,您必须编写一个库(或使用第三方库)才能执行矢量运算。

我知道这是旧的,但也许有人会觉得这很有用:

还有Apache Commons Math ,它有一个Vector2D类。