Java 配列内の要素の検索
Java では配列が広く使用されているにもかかわらず、初心者プログラマはこれらの構造内で特定の要素を検索するのが困難に直面することがよくあります。コレクションにあるものに匹敵する、一見単純な IndexOf メソッドがないため、当惑する可能性があります。
Array.indexOf() の欠如への対処
一方、Java 配列にはありません。固有の IndexOf メソッドを持っている場合は、適切な代替手段があります。 Arrays ユーティリティ クラスは、2 つの実用的なアプローチを提供します。
1.ソートされていない配列に対する Arrays.asList() の利用
プリミティブで構成されていないソートされていない配列の場合、次のアプローチを使用できます。
java.util.Arrays.asList(theArray).indexOf(o)
このメソッドは配列を次のように変換します。リスト。から継承された IndexOf メソッドに適しています。リスト。
2.ソートされた配列の二分検索
ソートされた配列を扱う場合、二分検索を利用するとパフォーマンスが大幅に向上します。
java.util.Arrays.binarySearch(theArray, o)
二分検索は要素の位置または予想される挿入を効率的に識別します。存在しない場合はインデックスを付けます。
プリミティブに関する注意配列
配列がプリミティブ値で構成されている場合、asList() を使用する最初のアプローチは誤ってコンパイルされ、間違った結果が得られる可能性があることに留意することが重要です。このような場合は、カスタム ループの実装などの代替アプローチが必要です。
以上がIndexOf() を使用せずに Java 配列内の要素を検索する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。