當前位置:首頁 » 編程語言 » javaset

javaset

發布時間: 2022-01-13 06:54:59

java中set的用法

class Test {
private String name ;

void setName(String name){ this.name = name ;}
String getName() { return name ;}

public static void main(String [] args)
{
Test test = new Test();
test.setName("Tom");
System.out.println ("get the name is :" + test.getName());
}
}

Ⅱ java中SET和GET。。。

java程序一般將A類的屬性修飾符設置為private,這是為了更好的封裝數據。要想在B類里引用該屬性,就可以在A類里定義修飾符為public的set,get方法以設置和獲取private型的屬性值

別說的那麼專業化了,理解都要半天。
就這么理解吧,面向對象中,想對類的成員變數設置訪問一些許可權,於是,就將該欄位設置為private的,這樣別的類就不能訪問了,然後在該內定義兩個方法,一個專門用於獲取,一個用於修改,這樣,在你不想讓別人亂動該欄位的時候,就在該方法內寫一些限制條件。
而為了規范起見(團隊開發需要嘛),就根據人家老外的習慣,將方法名設置為set+欄位名,get+欄位名(名字亂改沒問題),既然規范了,那就是別人都叫這名了,於是,有些框架給對象賦值就有方法了,方法名稱由get或set開始的又有private變數名的,就找出來調用。hibernate1框架就這樣弄得,至於後面的版本是不是這樣就不大清楚了。
JavaBean就是一個JAVA類,既然是JAVA類就不需要什麼組件了,這玩意直接深入到虛擬機了的
java程序規范中會建議大家盡量將類中的屬性私有化,即定義為private變數,通過設置set和get函數來對屬性進行操作。一些人存在這樣的疑問,為什麼不直接將屬性設置為public,以後調用屬性時直接通過對象進行訪問不是更方便?

當然java中這樣做有它的原因:

1 將數據與行為分離,也就是java的面向對象的概念。
對象就是屬性+行為,封裝就是把對象的私有屬性封裝起來,只有通過自己公開的行為去改變(獲得)對象內部的私有屬性信息,而那些public的方法正是面向其他對象的介面,只有通過介面去改變(獲得)對象的私有屬性

2 安全性
設想,你有一個Person類代表一個人,Person有一個char類型的sex欄位表示性別,理論上,sex只接受兩個值, 'M '和 'F ',但如果你把sex欄位設為public,你很難限制你的用戶只給它賦 'M '或 'F '值。將sex設為private,再用setSex()來設置性別,你就完全可以控制這種行為了。而且你還可以控制只能get不能set,或相反,但如果是public就不行了。別外有一點屬性我們可能並不希望其他用戶對我們的屬性進行寫操作,這個時候,可以直接不寫setX方法。這就是只讀屬性了。

3 編碼規范性
我們在設計類,或者作com組件時經常告訴其實coder,你只需要調用我的XX介面方法就可以了,內部我是怎麼實現的,你不用管,如果面向特定的環境特定的時間段,直接將屬性聲明為public,讓外部對象訪問也未償不可,沒有面象對象思想時,我在寫C語言程序時結構中的變數是可以隨意被訪問的,因為沒有pulbic,private之分,現在我們是面向對象編程,我們需要在介面處作文章,而保護對象的私有屬性,即安全性,只有通過對外公開的介面方法去訪問在面向對象理論上認為是安全的。

4 穩定性

5 可擴展性

6 便於維護

Ⅲ java集合set有哪些方法

set是一個介面,一般實現類用HashSet

方法摘要

boolean add(E e)
如果 set 中尚未存在指定的元素,則添加此元素(可選操作)。
boolean addAll(Collection<? extends E> c)
如果 set 中沒有指定 collection 中的所有元素,則將其添加到此 set 中(可選操作)。
void clear()
移除此 set 中的所有元素(可選操作)。
boolean contains(Object o)
如果 set 包含指定的元素,則返回 true。
boolean containsAll(Collection<?> c)
如果此 set 包含指定 collection 的所有元素,則返回 true。
boolean equals(Object o)
比較指定對象與此 set 的相等性。
int hashCode()
返回 set 的哈希碼值。
boolean isEmpty()
如果 set 不包含元素,則返回 true。
Iterator<E> iterator()
返回在此 set 中的元素上進行迭代的迭代器。
boolean remove(Object o)
如果 set 中存在指定的元素,則將其移除(可選操作)。
boolean removeAll(Collection<?> c)
移除 set 中那些包含在指定 collection 中的元素(可選操作)。
boolean retainAll(Collection<?> c)
僅保留 set 中那些包含在指定 collection 中的元素(可選操作)。
int size()
返回 set 中的元素數(其容量)。
Object[] toArray()
返回一個包含 set 中所有元素的數組。
<T>
T[] toArray(T[] a)
返回一個包含此 set
中所有元素的數組;返回數組的運行時類型是指定數組的類型。

Ⅳ java中set函數問題

括弧里的username是該方法接收過來的參數,
this.username表示本模型類中的username屬性
this.username =username表示將接收過來的參數賦值給本模型類中的username屬性;
至於大寫,是java的一種書寫規范吧,你小寫也能通過編譯

Ⅳ Java中set什麼意思

setLayout 設置此容器的布局管理器,也就是給界面布局
Jdk 就是這樣定義的,這個沒有什麼喜歡不喜歡,而且用set具有易讀性

Ⅵ java中怎麼往集合類set里添加數據

兩種向Set中添加元素的方法,第一種是使用add()方法,每次添加一個元素到set中,當集合中不存在相同元素時將添加到集合中,並返回true,當集合中存在元素時,返回false。代碼如下:

Set<String> sets = new HashSet<>();
sets.add("String");
System.out.println(sets.add("Tree"));
System.out.println(sets.add("String"));
List<String> lists = new LinkedList<>();
lists.add("test");
lists.add("test");
lists.add("one");
System.out.println(sets.addAll(lists));

還有一個是向集合中批量添加元素的方法addAll(),這個方法的入參是Colletion。上述代碼執行結果如下:

擴展知識

Set集合可以知道某物是否已近存在於集合中,不會存儲重復的元素,注重獨一無二的性質,用於存儲無序(存入和取出的順序不一定相同)元素,值不能重復。可以很好地作為排重時使用的數據結構,但要注意集合內部數據一般情況沒有順序。常用的set有HashSet和TreeSet。

TreeSet是JAVA中集合的一種,TreeSet 是一個有序的集合,它的作用是提供有序的Set集合。它繼承於AbstractSet抽象類,實現了NavigableSet<E>,Cloneable,java.io.Serializable介面。一種基於TreeMap的NavigableSet實現,支持2種排序方式:自然排序或者根據創建TreeSet 時提供的 Comparator 進行排序。

Ⅶ 怎樣從java集合類set中取出數據

一般是通過迭代期獲取數據,因為set集合無序,所以輸出不是順序輸出

importjava.util.HashSet;
importjava.util.Iterator;
importjava.util.Set;

publicclassTest{
publicstaticvoidmain(String[]args){
//初始化set集合
Set<String>set=newHashSet<>();
set.add("1");
set.add("2");
set.add("3");
//獲取set集合數據
for(Iteratoriterator=set.iterator();iterator.hasNext();){
Stringstring=(String)iterator.next();
System.out.println(string);
}

}
}

Ⅷ java的set方法

我怎麼沒明白呢? xx是個類還是個java primitive type?給java 變數賦值用 =
變數 = 值;
就行了啊。
看你寫xx.setParentId ('0');估計xx是個類?xx有個變數叫parentId? 你想給這個parentId一個值?
你可以在xx類里叫一個set方法
Class XX{
private int parentId;
public void setParentId(int parentId){
this.parentId = parentId;
}
}

外部調用時 xx.setParentId(0);就可以。
當然,如果parentId是字元串,就把int的地方改成String,然後調用xx.setParentId("0");

Ⅸ java 怎麼給set賦值

定義一個Set的對象

1

Set set=new HashSet();//new 一個hashset

2、往set中添加字元串數據數據

1

set.add("內容");//往set里添加一個字元串"內容"

Set是最簡單的一種集合,沒有重復對象。Set介面主要實現了兩個實現類:
HashSet : HashSet類按照哈希演算法來存取集合中的對象,存取速度比較快
TreeSet : TreeSet類實現了SortedSet介面,能夠對集合中的對象進行排序。

Ⅹ 在java中set.add的意思

add

boolean add(E e)

如果 set 中尚未存在指定的元素,則添加此元素(可選操作)。更確切地講,如果此 set 沒有包含滿足 (e==null ? e2==null : e.equals(e2)) 的元素 e2,則向該 set 中添加指定的元素 e。如果此 set 已經包含該元素,則該調用不改變此 set 並返回 false。結合構造方法上的限制,這就可以確保 set 永遠不包含重復的元素。

上述規定並未暗示 set 必須接受所有元素;set 可以拒絕添加任意特定的元素,包括 null,並拋出異常,這與 Collection.add 規范中所描述的一樣。每個 set 實現應該明確地記錄對其可能包含元素的所有限制。

指定者:
介面 Collection<E> 中的 add

參數:
e - 要添加到 set 中的元素
返回:
如果 set 尚未包含指定的元素,則返回 true
拋出:
UnsupportedOperationException - 如果此 set 不支持 add 操作
ClassCastException - 如果指定元素的類不允許它添加到此 set
NullPointerException - 如果指定的元素為 null 並且此 set 不允許 null 元素
IllegalArgumentException - 如果指定元素的某些屬性不允許它添加到此 set

轉自api說明

熱點內容
電信級伺服器電腦 發布:2024-11-15 09:26:27 瀏覽:246
壓縮某個文件夾 發布:2024-11-15 09:03:11 瀏覽:891
網址能解壓嗎 發布:2024-11-15 08:54:09 瀏覽:933
python更改目錄 發布:2024-11-15 08:41:08 瀏覽:265
伺服器快閃記憶體可以裝在一般電腦上嗎 發布:2024-11-15 08:36:46 瀏覽:8
安卓手機怎麼查詢自己的路線軌跡 發布:2024-11-15 08:32:19 瀏覽:969
phpdatet 發布:2024-11-15 08:32:17 瀏覽:507
HDB3編解碼實驗 發布:2024-11-15 08:17:31 瀏覽:212
怪星球編程 發布:2024-11-15 08:15:55 瀏覽:844
慧編程價格 發布:2024-11-15 08:14:09 瀏覽:459