この記事では、Java での List コレクションのメソッドとその実装クラスを紹介します (コード付き)。一定の参考価値があります。困っている友人は参考にしてください。お役に立てれば幸いです。
List collection_List インターフェイスの概要
機能
1). 順序付け;
2). 重複要素を保存可能;
3). インデックスを通じてアクセスできます;
List<String> list = new ArrayList<>(); list.add("张无忌"); list.add("张三丰"); list.add("章子怡"); list.add("章子怡");//OK的,可以添加 for(String s : list){ System.out.println(s);//有序的 }
Method
Collection インターフェイスのすべてのメソッドを継承し、独自のメソッドを多数備えています
void add(String item) 向滚动列表的末尾添加指定的项。 void add(String item, int index) 向滚动列表中索引指示的位置添加指定的项。 void addActionListener(ActionListener l) 添加指定的动作侦听器以从此列表接收动作事件。 void addItemListener(ItemListener l) 添加指定的项侦听器以接收此列表的项事件。 void addNotify() 创建列表的同位体。 void deselect(int index) 取消选择指定索引处的项。 AccessibleContext getAccessibleContext() 获取与此 List 关联的 AccessibleContext。 ActionListener[] getActionListeners() 返回已在此列表上注册的所有动作侦听器的数组。 String getItem(int index) 获取与指定索引关联的项。 int getItemCount() 获取列表中的项数。 ItemListener[] getItemListeners() 返回已在此列表上注册的所有项侦听器的数组。 String[] getItems() 获取列表中的项。 <T extends EventListener> T[] getListeners(Class<T> listenerType) 返回目前已在此 List 上注册为 FooListener 的所有对象的数组。 Dimension getMinimumSize() 确定此滚动列表的最小大小。 Dimension getMinimumSize(int rows) 获取具有指定行数的列表的最少维数。 Dimension getPreferredSize() 获取此滚动列表的首选大小。 Dimension getPreferredSize(int rows) 获取具有指定行数的列表的首选维数。 int getRows() 获取此列表中的可视行数。 int getSelectedIndex() 获取列表中选中项的索引。 int[] getSelectedIndexes() 获取列表中选中的索引。 String getSelectedItem() 获取此滚动列表中选中的项。 String[] getSelectedItems() 获取此滚动列表中选中的项。 Object[] getSelectedObjects() 获取对象数组中此滚动列表的选中项。 int getVisibleIndex() 获取上次由 makeVisible 方法使其可视的项的索引。 boolean isIndexSelected(int index) 确定是否已选中此滚动列表中的指定项。 boolean isMultipleMode() 确定此列表是否允许进行多项选择。 void makeVisible(int index) 使指定索引处的项可视。 protected String paramString() 返回表示此滚动列表状态的参数字符串。 protected void processActionEvent(ActionEvent e) 处理发生在此列表上的动作事件,方法是将这些事件指派给所有已注册的 ActionListener 对象。 protected void processEvent(AWTEvent e) 此滚动列表的进程事件。 protected void processItemEvent(ItemEvent e) 处理发生在此列表上的项事件,方法是将这些事件指派给所有已注册的 ItemListener 对象。 void remove(int position) 从此滚动列表中移除指定位置处的项。 void remove(String item) 从列表中移除项的第一次出现。 void removeActionListener(ActionListener l) 移除指定的动作侦听器,以便不再从此列表接收动作事件。 void removeAll() 从此列表中移除所有项。 void removeItemListener(ItemListener l) 移除指定的项侦听器,以便不再从此列表接收项事件。 void removeNotify() 移除此列表的同位体。 void replaceItem(String newValue, int index) 使用新字符串替换滚动列表中指定索引处的项。 void select(int index) 选择滚动列表中指定索引处的项。 void setMultipleMode(boolean b) 设置确定此列表是否允许进行多项选择的标志。 api
一般的に使用されるメソッド (次のメソッドは List インターフェイスに固有です)
1) 追加: public void add(int index,E e): 現在のコレクションのインデックス位置に e を追加します。
2). 削除: public E Remove(int index): インデックス位置の要素を削除し、削除された要素を返します。
3). 変更: public E set(intindex,E element): 要素をインデックス位置の要素に置き換え、元のインデックス位置の要素を返します。
4). チェック: public E get(int index): インデックス位置の要素を取得します。
サンプル コード:
public static void main(String[] args) { //List集合中增加自己的add方法,add(int index,E e); List<String> list=new ArrayList<>(); list.add("aaaa"); list.add("bbbb"); list.add("cccc"); list.add(1,"dddd"); System.out.println(list); //删除指定索引的元素,并将删除的元素返回 String removeStr=list.remove(2); System.out.println(removeStr); System.out.println(list); //修改指定索引位置上的元素set(int index,E e),并将原index位置上的元素返回 String setStr=list.set(2,"ffff"); System.out.println(setStr); System.out.println(list); //通过索引获取指定索引上的元素 String getStr=list.get(2); System.out.println("索引为3的元素为:"+getStr); System.out.println(list); }
List インターフェイスを実装する一般的に使用されるクラス_ArrayList
1). List インターフェイスを実装する一般的に使用されるクラス
2).ArrayList
特徴:
高速クエリ---インデックスを使用
遅い追加と削除---必要展開するには、ビットを移動します。
イラスト:
方法:
独自の方法はありません
ケース
public static void main(String[] args) { //List集合中增加自己的add方法,add(int index,E e); ArrayList<String> list=new ArrayList<>(); list.add("aaaa"); list.add("hhhh"); list.add("cccc"); list.add(1,"dddd"); System.out.println(list); //删除指定索引的元素,并将删除的元素返回 String removeStr=list.remove(2); System.out.println(removeStr); System.out.println(list); //修改指定索引位置上的元素set(int index,E e),并将原index位置上的元素返回 String setStr=list.set(2,"ffff"); System.out.println(setStr); System.out.println(list); //通过索引获取指定索引上的元素 String getStr=list.get(2); System.out.println("索引为3的元素为:"+getStr); System.out.println(list); }
3).LinkedList
機能
リンク リストを使用して、
高速な追加と削除、低速のクエリを実現します
図
メソッド
スタックとキューをシミュレートするための新しいメソッドをいくつか追加しました:
1) .public void Push(Object o): スタックのプッシュは、指定された要素をこのコレクションの先頭に追加する addFirst
(E e)
と同等です
2).public
E Pop(): スタックをポップします - 要素がない場合は、例外がスローされます;
public Epoll(): スタックをポップします - 要素がない場合は、null が返されます [推奨]
ケース:
public class Demo { public static void main(String[] args) { LinkedList<String> list = new LinkedList<>(); list.push("孙悟空"); list.push("猪八戒"); list.push("沙和尚"); System.out.println(list); while (list.size() > 0) { System.out.println("弹出一个:" + list.poll()); System.out.println("集合大小:" + list.size()); } } }
以上がJava の List コレクションのメソッドとその実装クラスの紹介 (コード付き)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

javadevelopmentisnotentirelylylypratform-IndopentDuetoseveralfactors.1)jvmvariationsaffectperformanceandbehavioracrossdifferentos.2)nativeLibrariesviajniintroducePlatform-specificissues.3)giaiasystemsdifferbeTioneplateplatifflics.4)

Javaコードは、さまざまなプラットフォームで実行するときにパフォーマンスの違いがあります。 1)JVMの実装と最適化戦略は、OracleJDKやOpenJDKなどとは異なります。 2)メモリ管理やスレッドスケジューリングなどのオペレーティングシステムの特性もパフォーマンスに影響します。 3)適切なJVMを選択し、JVMパラメーターとコード最適化を調整することにより、パフォーマンスを改善できます。

java'splatformindepentedencehaslimitationsincludingporformanceoverhead、versioncompatibulisisues、changleSwithnativeLibraryIntegration、プラットフォーム固有の機能、およびjvminStallation/maintenation。

PlatformEndependEncealLowsProgramStorunonAnyPlatformWithOdification、whilecross-platformdevelopmentReadreessomeplatform-specificAdjustments.platformindependence、explifiedByjava、unableSiversAlexecutionButMayCompromperformance

jitcompalilationinjavaenhancesperformance whelemaintaining formindepence.1)itdynamicallyTrantesiNTODENATIVEMACHINECODEATRUNTIME、最適化されたコードを最適化すること、

javaispopularforsoss-platformdesktopapplicationsduetoits "writeonce、runaynay" philosophy.1)itusesbytecodatiTatrunnanyjvm-adipplatform.2)ライブラリリケンディンガンドジャヴァフククレアティック - ルルクリス

Javaでプラットフォーム固有のコードを作成する理由には、特定のオペレーティングシステム機能へのアクセス、特定のハードウェアとの対話、パフォーマンスの最適化が含まれます。 1)JNAまたはJNIを使用して、Windowsレジストリにアクセスします。 2)JNIを介してLinux固有のハードウェアドライバーと対話します。 3)金属を使用して、JNIを介してMacOSのゲームパフォーマンスを最適化します。それにもかかわらず、プラットフォーム固有のコードを書くことは、コードの移植性に影響を与え、複雑さを高め、パフォーマンスのオーバーヘッドとセキュリティのリスクをもたらす可能性があります。

Javaは、クラウドネイティブアプリケーション、マルチプラットフォームの展開、および言語間の相互運用性を通じて、プラットフォームの独立性をさらに強化します。 1)クラウドネイティブアプリケーションは、GraalvmとQuarkusを使用してスタートアップ速度を向上させます。 2)Javaは、埋め込みデバイス、モバイルデバイス、量子コンピューターに拡張されます。 3)Graalvmを通じて、JavaはPythonやJavaScriptなどの言語とシームレスに統合して、言語間の相互運用性を高めます。


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

MinGW - Minimalist GNU for Windows
このプロジェクトは osdn.net/projects/mingw に移行中です。引き続きそこでフォローしていただけます。 MinGW: GNU Compiler Collection (GCC) のネイティブ Windows ポートであり、ネイティブ Windows アプリケーションを構築するための自由に配布可能なインポート ライブラリとヘッダー ファイルであり、C99 機能をサポートする MSVC ランタイムの拡張機能が含まれています。すべての MinGW ソフトウェアは 64 ビット Windows プラットフォームで実行できます。

AtomエディタMac版ダウンロード
最も人気のあるオープンソースエディター

VSCode Windows 64 ビットのダウンロード
Microsoft によって発売された無料で強力な IDE エディター

SublimeText3 Linux 新バージョン
SublimeText3 Linux 最新バージョン

DVWA
Damn Vulnerable Web App (DVWA) は、非常に脆弱な PHP/MySQL Web アプリケーションです。その主な目的は、セキュリティ専門家が法的環境でスキルとツールをテストするのに役立ち、Web 開発者が Web アプリケーションを保護するプロセスをより深く理解できるようにし、教師/生徒が教室環境で Web アプリケーションを教え/学習できるようにすることです。安全。 DVWA の目標は、シンプルでわかりやすいインターフェイスを通じて、さまざまな難易度で最も一般的な Web 脆弱性のいくつかを実践することです。このソフトウェアは、

ホットトピック









