国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

J2EE&集合框架&List

這篇具有很好參考價值的文章主要介紹了J2EE&集合框架&List。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

目錄

一.UML

①集合類圖

②線下教育平臺用例圖

?二.List集合特點

①學集合框架就是了解容器的數(shù)據(jù)結構(增刪改查)

②有序的 可重復的

三.遍歷方式

①?foreach

② iterator 迭代器

③ for

四.LinkedList

①對比ArrayList是數(shù)據(jù)結構

Linkedlist: 鏈表 特點:查詢修改慢,增加刪除快

Arraylist: 數(shù)組? 特點:查詢修改快,增加刪除慢

②堆棧 隊列

五.增長因子論證

六.集合框架ArrayList中的重復元素去重及其底層原理


一.UML

①集合類圖

J2EE&集合框架&List,java-ee,list,java,eclipse

②線下教育平臺用例圖

J2EE&集合框架&List,java-ee,list,java,eclipse

?二.List集合特點

①學集合框架就是了解容器的數(shù)據(jù)結構(增刪改查)

②有序的 可重復的

public class Demo1 {
?? ?public static void main(String[] args) {
?? ??? ?//集合本身就是一個容器,容器的特點,就是對存儲的元素進行增刪改查
?? ??? ?List list = new ArrayList<>();
?? ??? ?//增加
?? ??? ?list.add("a");
?? ??? ?list.add("b");
?? ??? ?list.add("c");
?? ??? ?System.out.println("目前集合容器中的元素:"+list);
?? ??? ?//修改
?? ??? ?list.set(1, "y");
?? ??? ?System.out.println("容器元素修改后,目前容器中的元素:"+list);
?? ??? ?//刪除
?? ??? ?list.remove(0);
?? ??? ?list.remove("a");
?? ??? ?System.out.println("容器元素刪除后,目前集合容器中的元素:"+list);
?? ??? ?//查看
?? ??? ?System.out.println("獲取第一個容器元素:"+list.get(0));
?? ?
?? ?}

?

三.遍歷方式

①?foreach

② iterator 迭代器

③ for


?? ?public static void main(String[] args) {
?? ??? ?List list = new ArrayList<>();
?? ??? ?//增加
?? ??? ?list.add("a");
?? ??? ?list.add("b");
?? ??? ?list.add("c");

???????①?foreach
?? ??? ?for (Object object : list) {
?? ??? ??? ?System.out.println(object);
?? ??? ?}
?? ??? ?② iterator 迭代器

?? ??? ?Iterator it = list.iterator();
?? ??? ?while(it.hasNext()) {
?? ??? ??? ?System.out.println(it.next());
?? ??? ?}
?? ??? ?③ for

?? ??? ?for (int i = 0; i < list.size(); i++) {
?? ??? ??? ?System.out.println(list.get(i));
?? ??? ?}
?? ?}

四.LinkedList

①對比ArrayList是數(shù)據(jù)結構

Linkedlist: 鏈表 特點:查詢修改慢,增加刪除快
Arraylist: 數(shù)組? 特點:查詢修改快,增加刪除慢

J2EE&集合框架&List,java-ee,list,java,eclipse

②堆棧 隊列

J2EE&集合框架&List,java-ee,list,java,eclipse

/**
?* 用linkedList完成一個堆棧容器
?* 1.考核linkedList的api方法
?* 2.考核堆棧/隊列的數(shù)據(jù)結構特點
?* @author PC
?*
?*/
public class Demo2 {
?? ?public static void main(String[] args) {
?? ??? ?LinkedList ll = new LinkedList<>();
?? ??? ?ll.add("a");
?? ??? ?ll.add("b");
?? ??? ?ll.add("c");
?? ??? ?DuiZhan dz = new DuiZhan(ll);
?? ??? ?//定義一個方法,當這個方法被調用的時候,后存進去的元素要先輸出,先存進去的元素要后輸出
?? ??? ?System.out.println(dz.pop());
?? ??? ?System.out.println(dz.pop());
?? ??? ?System.out.println(dz.pop());
?? ?}

}

class DuiZhan{
?? ?private LinkedList ll;

?? ?public DuiZhan(LinkedList ll) {
?? ??? ?super();
?? ??? ?this.ll = ll;
?? ?}
//壓棧 ?彈棧?? ?
?? ?public Object pop() {
?? ??? ?return ll.removeLast();
?? ?}
?? ?
}

?文章來源地址http://www.zghlxwxcb.cn/news/detail-536691.html

五.增長因子論證

/**
?* linkedList調優(yōu)
?* 元素存儲在集合的過程
?* ArrayList
?* 數(shù)組 長度不可變
?*?
?* 1.證明數(shù)據(jù)結構就是數(shù)組
?* 2.為什么數(shù)組長度不可變,集合List長度可變
?*?
?* 增長因子(一次性擴容多少) 0.5倍 ?擴容1.5倍 ?1+0.5
?* @author PC
?*
?*/
public class Demo3 {
?? ?public static void main(String[] args) throws NoSuchFieldException, SecurityException, IllegalArgumentException, IllegalAccessException {
?? ??? ?ArrayList al = new ArrayList<>(50);
?? ??? ?for (int i = 0; i < 100; i++) {
?? ??? ??? ?al.add(i);
?? ??? ??? ?System.out.println(i+"\r");
?? ??? ??? ?getCurrentArrLength(al);
?? ??? ?}
?? ??? ?
?? ?}
?? ?//獲取ArrayList al對象底層數(shù)組的長度
?? ?private static void getCurrentArrLength(ArrayList al) throws NoSuchFieldException, SecurityException, IllegalArgumentException, IllegalAccessException {
?? ??? ?Field f = al.getClass().getDeclaredField("elementData");
?? ??? ?f.setAccessible(true);
?? ??? ?Object[] Object = (java.lang.Object[]) f.get(al);
?? ??? ?System.out.println("當前集合底層數(shù)組的容器長度"+Object.length);
?? ?}
?? ??? ?

六.集合框架ArrayList中的重復元素去重及其底層原理

/**
?* list底層對象去重原理?? ?跟equals
?* @author PC
?*
?*/
public class Demo4 {
?? ?public static void main2(String[] args) throws NoSuchFieldException, SecurityException, IllegalArgumentException, IllegalAccessException {
?? ??? ?List list = new ArrayList<>();
?? ??? ?list.add("a");
?? ??? ?list.add("b");
?? ??? ?list.add("c");
?? ??? ?System.out.println("目前集合容器中的"+list);
?? ??? ?//去重
?? ??? ?if(!list.contains("b")) {
?? ??? ??? ?list.add("b");
?? ??? ?}
?? ??? ?System.out.println("目前集合容器中的"+list);
?? ?}
?? ?public static void main(String[] args) throws NoSuchFieldException, SecurityException, IllegalArgumentException, IllegalAccessException {
?? ??? ?List list = new ArrayList<>();
?? ??? ?list.add(new Student(1,"zs"));
?? ??? ?list.add(new Student(2,"ls"));
?? ??? ?list.add(new Student(3,"lx"));
?? ??? ?System.out.println("目前集合容器中的"+list);
?? ??? ?//去重
?? ??? ?if(!list.contains(new Student(3,"lx"))) {
?? ??? ??? ?list.add(new Student(3,"lx"));
?? ??? ?}
?? ??? ?System.out.println("目前集合容器中的"+list);
?? ?}
}
class Student{
?? ?private int id;
?? ?private String name;
?? ?public int getId() {
?? ??? ?return id;
?? ?}
?? ?public void setId(int id) {
?? ??? ?this.id = id;
?? ?}
?? ?public String getName() {
?? ??? ?return name;
?? ?}
?? ?public void setName(String name) {
?? ??? ?this.name = name;
?? ?}
?? ?
?? ?public Student() {
?? ??? ?// TODO Auto-generated constructor stub
?? ?}
?? ?public Student(int id, String name) {
?? ??? ?super();
?? ??? ?this.id = id;
?? ??? ?this.name = name;
?? ?}
?? ?@Override
?? ?public String toString() {
?? ??? ?return "Student [id=" + id + ", name=" + name + "]";
?? ?}
?? ?
?? ?@Override
?? ?public boolean equals(Object obj) {
?? ??? ?System.out.println("被調了。。。");
?? ??? ?if (this == obj)
?? ??? ??? ?return true;
?? ??? ?if (obj == null)
?? ??? ??? ?return false;
?? ??? ?if (getClass() != obj.getClass())
?? ??? ??? ?return false;
?? ??? ?Student other = (Student) obj;
?? ??? ?if (id != other.id)
?? ??? ??? ?return false;
?? ??? ?if (name == null) {
?? ??? ??? ?if (other.name != null)
?? ??? ??? ??? ?return false;
?? ??? ?} else if (!name.equals(other.name))
?? ??? ??? ?return false;
?? ??? ?return true;
?? ?}

到了這里,關于J2EE&集合框架&List的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • J2EE&反射

    目錄 一.什么是反射 ? ? ? ?用實體類Student做示范 三.反射實例化 四.反射動態(tài)方法調用 五.反射讀寫屬性 反射java語言中的一種機制,通過這種機制可以動態(tài)的實例化對象,讀寫屬性,調用方法 二.類類 Class.forName(完整類名) 類名 .class 對象 .getClass ? ? ? ?用實體類Student做示范

    2024年02月16日
    瀏覽(24)
  • J2EE&XML建模

    目錄 用一個xml-config文件實例: 先看config.xml文件 再看?ActionModel ConfigModel ActionNotFoundException ForwardNotFoundException ConfigModelFactory ActionDuplicateDefinitionException ForwardDuplicateDefinitionException InvalidPathException 用一個xml-config文件實例: ?ActionModel ConfigModel ForwardModel? ? ? ActionNotFoundExcepti

    2024年02月16日
    瀏覽(29)
  • J2EE&通用分頁02

    J2EE&通用分頁02

    目錄 一.重構-提取公用方法???????? ? ?1.為了進行公共方法的抽取,需要找出上面實習中的可通用部分,和差異化部分 ? ? 2.公用方法封裝思路 ? ? ? 3.?具體實現(xiàn) 二.分頁標簽 2.1 準備一個Servlet ?3.2 結果展示頁面 三.?過濾器解決中文亂碼問題 四.加入分頁功能 四.封裝分

    2024年02月15日
    瀏覽(21)
  • J2EE項目部署與發(fā)布(Windows版本)

    J2EE項目部署與發(fā)布(Windows版本)

    目錄 一、會議OA單體項目Windows部署 1.1 數(shù)據(jù)測試 1.2 項目部署 1.3 報錯解決 1.4 最終效果 二、spa前后端分離項目Windows部署 2.1 后端代碼測試 2.2 前端代碼測試 2.3 項目部署 2.3.1 數(shù)據(jù)導入 2.3.2 后端部署 2.3.3 前端部署 2.3.3.1 Node.js環(huán)境配置 2.3.4 端口問題解決 2.3.4.1 method1 2.3.4.2 meth

    2024年02月07日
    瀏覽(47)
  • J2EE項目部署與發(fā)布(Linux版本)

    J2EE項目部署與發(fā)布(Linux版本)

    目錄 一.jdktomcat安裝 1.jdk的安裝 ?1.2解壓對應的安裝包 1.3配置環(huán)境變量? 2.tomcat的安裝? 二.mysql的安裝 三.后端接口部署 ?后端部署 導入war包 修改端口? 開啟訪問 1.jdk的安裝 登錄VMware Workstation Pro 然后連接MobaXterm? ? ? 將 jdk tomcat mysql 導入到MobaXterm? ?1.2解壓對應的安裝包 ?

    2024年02月06日
    瀏覽(16)
  • 虛擬機部署與發(fā)布J2EE項目(Linux版本)

    虛擬機部署與發(fā)布J2EE項目(Linux版本)

    ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? 艷艷耶??:個人主頁 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? 個人專欄 :《Spring與Mybatis集成整合》《Vue.js使用》 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? 越努力 ,越幸

    2024年02月06日
    瀏覽(21)
  • J2EE,Java EE,Jakarta EE 命名之間的恩恩怨怨

    J2EE,Java EE,Jakarta EE 命名之間的恩恩怨怨

    ? 簡單來說,上面所有的名字指的都是一個東西 Java Platform, Enterprise Edition 上面的幾個名詞都是下面的內容的簡寫: J2EE(Java 2 Platform, Enterprise Edition) Java EE (Java Platform, Enterprise Edition) Jakarta EE(Jakarta Enterprise Edition) 上面的排序是按照時間演進來進行排序。 ? 1998年12月,SUN公司發(fā)

    2023年04月26日
    瀏覽(24)
  • 14天學會:基于J2EE的JAVA WEB基礎

    14天學會:基于J2EE的JAVA WEB基礎

    手把手教你:基于Django的新聞文本分類可視化系統(tǒng)(文本分類由bert實現(xiàn)) 手把手教你:基于python的文本分類(sklearn-決策樹和隨機森林實現(xiàn)) 手把手教你:巖石樣本智能識別系統(tǒng) 本文通過一個14天的學習文檔教會大家學會 基于J2EE的JAVA WEB基礎 本次上傳的資源比較大,因此分

    2024年02月15日
    瀏覽(23)
  • 【Linux】虛擬機部署與發(fā)布J2EE項目(Windows版本)

    【Linux】虛擬機部署與發(fā)布J2EE項目(Windows版本)

    跨平臺性:Java虛擬機(JVM)提供了一個中間層,使得Java應用程序可以在不同的操作系統(tǒng)上運行,無需進行代碼修改。這意味著您可以使用一套Java代碼,在不同的硬件和操作系統(tǒng)上部署和運行應用程序。 安全性:Java虛擬機提供了安全管理機制,可以對Java應用程序的執(zhí)行過程

    2024年02月08日
    瀏覽(20)
  • 小研究 - J2EE 應用服務器的軟件老化測試研究

    小研究 - J2EE 應用服務器的軟件老化測試研究

    軟件老化現(xiàn)象是影響軟件可靠性的重要因素,長期運行的軟件系統(tǒng)存在軟件老化現(xiàn)象,這將影響整個業(yè)務系統(tǒng)的正常運行,給企事業(yè)單位帶來無可估量的經(jīng)濟損失。軟件老化出現(xiàn)的主要原因是操作系統(tǒng)資源消耗殆盡,導致應用系統(tǒng)的性能下降甚至崩潰或宕機。文中監(jiān)測J2EE 應

    2024年02月11日
    瀏覽(24)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包