你可以像在Matlab中一样使用Java中的数组吗?

时间:2011-09-25 17:34:43

标签: java arrays matlab vector operations

我想知道是否有办法在不编写函数或for循环的情况下执行以下操作:

int[] ma = (3,4,4,5,6,7);
ma += 5;

因此,向数组中的所有元素添加5。 Matlab允许这样一个方便的捷径。

4 个答案:

答案 0 :(得分:3)

简短回答:不,你不能。你需要编写一个循环来完成它。

答案 1 :(得分:1)

总之:不。 Java没有这样的操作。但是没有什么可以阻止你编写一个接受数组和int的方法add()并将int添加到数组中的每个元素。写subtract()multiply()等等,你就会有一个很好的小库供你自己使用。

答案 2 :(得分:1)

如果您需要这么多,可以选择Scala。 Scala也在JVM上运行,并且有折叠之类的东西,它允许你用很少的代码定义这些东西。

然而,它是一种功能语言,需要与传统(迭代)编程不同的思维方式。

答案 3 :(得分:-2)

Java提供了许多集合类,其功能类似于Matlab为数组提供的功能。最接近的匹配是java.util.ArrayList,它由数组支持。您可以使用add()方法将项​​目附加到集合,而不是+=运算符。 ArrayList导出许多接口,使其与其他java包中的许多方法和类兼容。