JAVASE進階day07(泛型,集合,Set,TreeSet,枚舉,數據結構)

泛型

1.泛型的基本使用

限制集合存儲的數據類型

package com.lu.day07.generics;/*** 定義了一個泛型類* E 泛型通配字母(不固定代替真實數據類型A-Z都可以)* 常見的泛型通配字母:*      E:element 元素*      T:type 類型*      R:return 返回值類型*      K:key 鍵*      v: value 值* 子類一旦指定泛型父類用的也是子類的泛型* @param <E>*/
public class Date<E> {private E date;public E getDate() {return date;}public void setDate(E date) {this.date = date;}public static void main(String[] args) {Date<String> a = new Date<>();a.setDate("我是你爸爸");String date = a.getDate();System.out.println(a.getDate());Date<Integer> b = new Date<>();b.setDate(123);Integer date1 = b.getDate();System.out.println(date1);}
}

 Set

1.set集合的概念

2.HashSet的基本使用 

package com.lu.day07.setdome;import java.util.HashSet;
import java.util.Objects;public class SetDome {public static void main(String[] args) {HashSet<String> set = new HashSet<>();set.add("張三");set.add("張三");set.add("王二");set.add("勞模");set.add("小李");System.out.println(set);//HashSet自定義對象想要去重必須重寫 equals 和 hashCode 方法HashSet<Teacher> t = new HashSet<>();t.add(new Teacher("張老師","男","教師"));t.add(new Teacher("張老師","男","教師"));t.add(new Teacher("王老師","女","幼師"));t.add(new Teacher("李老師","男","主任"));System.out.println(t);//為什么重寫 equals 必須重寫 hashCode?//hash(哈希):是由hash算法對任意的輸入產生一個整數,并且是固定的//哈希碰撞:同一個輸入產生的hash值永遠一樣,但是不同的輸入生成的hash值可能一樣//hash如果內容一樣就生成一樣的hash值但是(如果內容相同)hash值可能相同這時候就需要equals進行比較了//如果兩個對象根據 equals 方法認為是相等的,那么它們必須有相同的 hashCode 值。//如果兩個對象 hashCode 值相等,它們未必 equals 相等,但如果 hashCode 不相等,它們一定不相等。String a = "a";String b = "b";System.out.println(Objects.hashCode(a));System.out.println(Objects.hashCode(b));}
}
package com.lu.day07.setdome;import java.util.Objects;public class Teacher {private String name;private String sex;private String job;public Teacher() {}public Teacher(String name, String sex, String job) {this.name = name;this.sex = sex;this.job = job;}public String getName() {return name;}public void setName(String name) {this.name = name;}public String getSex() {return sex;}public void setSex(String sex) {this.sex = sex;}public String getJob() {return job;}public void setJob(String job) {this.job = job;}@Overridepublic String toString() {return "Teacher{" +"name

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/44760.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/44760.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/44760.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

14.爬蟲---Selenium 經典動態渲染工具的使用

14.Selenium 經典動態渲染工具的使用 1.查看chrome瀏覽器版本2.ChromeDriver 安裝3.Selenium 安裝4.驗證安裝5.基本用法5.1啟動瀏覽器5.2導航到頁面5.3查找元素5.3.1單個元素 find_element5.3.2多個元素 find_elements 5.4 執行操作5.5 動作鏈ActionChains5.6 執行 JavaScript …

Python基礎語法:運算符詳解(算術運算符、比較運算符、邏輯運算符、賦值運算符)②

文章目錄 Python中的運算符詳解一、算術運算符二、比較運算符三、邏輯運算符四、賦值運算符五、綜合示例結論 Python中的運算符詳解 在Python編程中&#xff0c;運算符用于執行各種操作&#xff0c;例如算術計算、比較、邏輯判斷和賦值。了解并掌握這些運算符的使用方法是編寫…

pychopper的安裝與使用

文章目錄 安裝使用 安裝 在Linux環境下使用conda安裝 通常習慣一個軟件一個虛擬環境&#xff1a; conda create -n pychopper -c nanoporetech -c conda-forge -c bioconda "nanoporetech::pychopper"使用 參考官方文檔&#xff1a; https://github.com/epi2me-la…

N-(4-Azido-2-nitrophenyl)-N‘‘-biotinylnorspemidine

?一、基本信息 常用名&#xff1a;N-(4-Azido-2-nitrophenyl)-N-biotinylnorspemidine 英文名&#xff1a;N-(4-Azido-2-nitrophenyl)-N-biotinylnorspemidine CAS號&#xff1a;786609-83-4 分子式&#xff1a;C22H33N9O4S 分子量&#xff1a;519.62 二、結構特點 該化…

SQL職場必備:掌握數據庫技能提升職場競爭力

&#x1f482; 個人網站:【 摸魚游戲】【網址導航】【神級代碼資源網站】&#x1f91f; 一站式輕松構建小程序、Web網站、移動應用&#xff1a;&#x1f449;注冊地址&#x1f91f; 基于Web端打造的&#xff1a;&#x1f449;輕量化工具創作平臺&#x1f485; 想尋找共同學習交…

vue3 + tsx 表格 Action 單獨封裝組件用法

前言 先上圖看右側列 action 的 UI 效果&#xff1a; 正常來說&#xff0c;如果一個表格的附帶 action 操作&#xff0c;我們一般會放在最右側的列里面實現&#xff0c;這個時候有些UI 框架支持在 SFC 模板里面定義額外的 solt&#xff0c;當然如果不支持&#xff0c;更通用的…

【網絡】SCTP協議概念

SCTP協議 SCTP&#xff08;Stream Control Transmission Protocol&#xff09;是一種傳輸層協議&#xff0c;設計用于提供可靠的數據傳輸服務&#xff0c;同時具備一些類似UDP&#xff08;User Datagram Protocol&#xff09;的屬性。以下是SCTP協議的基本概念、優缺點以及與T…

Linux進行vi編譯代碼出現“E45: ‘readonly‘ option is set (add ! to override)”(完美解決)。

用vi修改文件&#xff0c;保存文件時&#xff0c;提示沒有修改該文件的權限“E45: ‘readonly’ option is set (add ! to override)”的解決方法。 E45: ‘readonly’ option is set (add ! to override) 如果您遇到了“當前用戶沒有權限對文件作修改”的錯誤 1. 檢查文件…

2024.7.11最新版IDM破解,操作簡單

前言 IDM的強勁對手&#xff0c;100%免費&#xff0c;如果破解IDM失敗&#xff0c;推薦使用FDM&#xff0c;下載地址&#xff1a;Free Download Manager 破解步驟 打開PowerShell&#xff0c;非CMD 在左下角開始菜單右鍵點擊后選擇PowerShell&#xff0c;注意不是打開CMD。…

園林類專刊《花卉》簡介及投稿郵箱

園林類專刊《花卉》簡介及投稿郵箱 《花卉》雜志是經國家新聞出版總署批準&#xff0c;廣東省農業科學院主管&#xff0c;廣東省農業科學院環境園藝研究所主辦&#xff0c;面向國內外公開發行林業系統專業期刊&#xff0c;是全國從事林業、園林、生態、環保、旅游、自然資源、…

CentOS7安裝部署git和gitlab

安裝Git 在Linux系統中是需要編譯源碼的&#xff0c;首先下載所需要的依賴&#xff1a; yum install -y curl-devel expat-devel gettext-devel openssl-devel zlib-devel gcc perl-ExtUtils-MakeMaker方法一 下載&#xff1a; wget https://mirrors.edge.kernel.org/pub/s…

【文檔+源碼+調試講解】冷凍倉儲管理系統

摘 要 隨著互聯網時代的到來&#xff0c;同時計算機網絡技術高速發展&#xff0c;網絡管理運用也變得越來越廣泛。因此&#xff0c;建立一個B/S結構的冷凍倉儲管理系統&#xff0c;會使冷凍倉儲管理系統工作系統化、規范化&#xff0c;也會提高冷凍倉儲管理系統平臺形象&#x…

現在國內的ddos攻擊趨勢怎么樣?想了解現在ddos的情況該去哪看?

目前&#xff0c;國內的DDoS攻擊趨勢顯示出以下幾個特征&#xff1a; 攻擊頻次顯著增加&#xff1a;根據《快快網絡2024年DDoS攻擊趨勢白皮書》&#xff0c;2023年DDoS攻擊活動有顯著攀升&#xff0c;總攻擊次數達到1246.61萬次&#xff0c;比前一年增長了18.1%。 攻擊強度和規…

微軟子公司Xandr遭隱私訴訟,或面臨巨額罰款

近日&#xff0c;歐洲隱私權倡導組織noyb對微軟子公司Xandr提起了訴訟&#xff0c;指控其透明度不足&#xff0c;侵犯了歐盟公民的數據訪問權。據指控&#xff0c;Xandr的行為涉嫌違反《通用數據保護條例》&#xff08;GFPR&#xff09;&#xff0c;因其處理信息并創建用于微目…

Shader每日一練(2)護盾

Shader "Custom/Shield" {Properties{_Size("Size", Range(0 , 10)) 1 // 控制噪聲紋理縮放大小的參數_colorPow("colorPow", Float) 1 // 控制顏色強度的指數_colorMul("colorMul", Float) 1 // 控制顏色乘法因子_mainColor("…

多旋翼+VR眼鏡:10寸FPV穿越機技術詳解

FPV&#xff08;First Person View&#xff09;穿越機&#xff0c;是指通過第一人稱視角來駕駛的無人機&#xff0c;特別強調速度和靈活性&#xff0c;常常用于競賽、航拍和探索等領域。結合多旋翼設計和VR眼鏡&#xff0c;FPV穿越機為用戶提供了身臨其境的飛行體驗。 多旋翼技…

數據庫操作和ORM(對象關系映射)框架.creat insert .save區別

1. .create 用途&#xff1a;.create 方法通常用于創建一個新的實體&#xff08;Entity&#xff09;實例&#xff0c;并為其屬性設置初始值。這個方法不會立即將實體保存到數據庫中&#xff0c;而是返回一個配置好的實體實例&#xff0c;該實例可以被進一步修改或用于后續操作…

企業網站被攻擊的常見方式是什么,該如何去做防護

隨著互聯網的普及和人們對網絡使用的增加&#xff0c;網站安全問題變得越來越突出。無論是個人還是企業&#xff0c;都需要了解并采取措施來保護自己的網站和用戶數據的安全。本文介紹常見的網站安全攻擊方式、潛在危害及其預防措施&#xff0c;幫助全面了解網站安全的各個方面…

Vue的常見指令

目錄 1.v-bind 2. class綁定 3.style綁定 4.v-if/v-show 1.v-bind v-bind指令用于綁定屬性 可以簡寫成 “ &#xff1a;” 它的作用就是我們可以動態的定義屬性的值&#xff0c;比如常見的<img src "1.jpg"> 我們如果想要修改圖片就需要獲取到DOM對象&am…

新興市場游戲產業爆發 傳音以技術搶抓機遇

隨著年輕人口的增加以及互聯網的普及&#xff0c;非洲、中東等新興市場正迎來游戲產業的大爆發&#xff0c;吸引著全球游戲企業玩家在此開疆辟土。中國出海企業代表傳音以新興市場需求為中心&#xff0c;秉持本地化創新理念不斷加強游戲等關鍵領域技術攻關憑借移動終端設備為全…