-2

javaの文字列配列に最大いくつの単語を保存できますか? 私は機械学習アルゴリズムに取り組んでおり、私の要件は約 3000 語です。配列を試してみましたが機能しないため、そのデータを処理するための代替手段を提案してください。

4

2 に答える 2

3

ArrayIndexOutOfBounds 例外を受け取っていると述べています。これは、配列の指定されたサイズを超えて使用しているためです。

String[] strings=new String[3000];
strings[3000]="something";//causes exception because strings[2999] is the last entry.

必要なエントリ数がわかっている場合は、そのサイズの配列を宣言するか、拡張可能な配列スタイルのコンテナーが必要な場合は、arraylist を使用します。

ArrayList<String> strings=new ArrayList<String>();
strings.add("Something"); //can be added as many times as you want (or that available memory will allow)

ArrayLists は、項目を追加すると自動的にサイズ変更されます。リストの動作が必要な場合 (つまり、順序付けされている場合) に理想的ですが、項目がいくつになるか事前にわかりません。

その後、必要に応じてリストからアイテムを取得できます。最も一般的な方法は次のとおりです。

String string=strings.get(0); //returns the first entry
int size=strings.size(); //tells you how many items are currently in the array list

ノート

予想される大きさを伝えることで ArrayList のパフォーマンスを向上させることができますがArrayList<String> strings=new ArrayList<String>(3000);、これは完全にオプションです

于 2013-10-14T14:11:37.023 に答える