関数やforループを記述せずに、次のことを行う方法があるかどうか疑問に思いました。
int[] ma = (3,4,4,5,6,7);
ma += 5;
したがって、配列内のすべての要素に5を追加します。Matlabは、このような便利なショートカットを可能にします。
関数やforループを記述せずに、次のことを行う方法があるかどうか疑問に思いました。
int[] ma = (3,4,4,5,6,7);
ma += 5;
したがって、配列内のすべての要素に5を追加します。Matlabは、このような便利なショートカットを可能にします。
簡単な答え:いいえ、できません。それを行うにはループを書く必要があります。
一言で言えば:いいえ。Javaにはそのような操作はありません。しかしadd()
、配列とintを受け取り、配列内のすべての要素にintを追加するメソッドを作成することを妨げるものは何もありません。、などを書くsubtract()
とmultiply()
、自分で使用するための素敵な小さなライブラリができます。
これが必要な場合は、Scalaをよく調べることもできます。ScalaもJVM上で実行され、foldsのようなものがあり、非常に小さなコードでこれらの種類のものを定義することができます。
ただし、これは関数型言語であり、従来の(反復)プログラミングとは異なる考え方が必要です。
Javaは、Matlabが配列に提供するものと同様の機能を備えた多数のコレクションクラスを提供します。最も近い一致はjava.util.ArrayList
、配列に裏打ちされたです。演算子add()
の代わりに、このメソッドを使用してアイテムをコレクションに追加できます。他のJavaパッケージのメソッドやクラスの多くと互換性のある多くのインターフェースをエクスポートします。+=
ArrayList