日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

java打印整个向量_Java中Vector向量的用法

發布時間:2023/12/15 java 20 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java打印整个向量_Java中Vector向量的用法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Java中的向量實際就是一個動態的可自動擴容的數組

1、向量中的元素必須是引用型的變量,而且可以進行增刪改等多種操作

2、同樣有向量的容量和向量的長度兩個屬性,當新的長度超過容量時,程序會自動擴容

此外,還有一個屬性是 容量的增量 , 容量的增量的設定控制著擴容的規則,當需要進行

擴容時,則從下面兩個數值中選取教的一個進行擴容:

① 第一個數是向量對象的新的長度

② 第二個數根據增量來確定:

<1>如果增量為 0 , 則第二個數為舊的容量的2倍

<2>如果增量不為0 ,則第二個數為舊容量與增量之和

3、向量引用型變量的聲明

Vector變量名

如: Vector vs

4、向量實例對象的創建方法——通過構造方法

① public Vector() 默認容量為10,增量為0

② public Vector(int initialCapacity) 容量為initialCapacity,增量為0

③ public Vector(int initialCapacity , int capacityIncrement)

注意在創建對象調用構造方法的形式如下:

Vector vs = new Vector() ;

5、對向量實例對象的操作方法(E代表元素的數據類型)

<1> 增加與插入

① public boolean add(E obj)

public void addElementA(E obj)

都是在向量的尾部增加元素

② public void add(int index , E obj)

public void insertElementAt(E obj , int index)

都是在指定的位置插入新的元素

<2> 修改于刪除

① public E set(int index , E element)

public void setElementAt(E obj, int index)

都是指定位置的元素的修改,其中第一個方法返回舊的被修改元素的引用

② public void clear()

public void removeAllElements()

刪除向量中的所有的元素

③ public E remove(int index)

public void removeElementAt(int index)

刪除指定位置的元素

④ public boolean remove(Object obj)

public boolean removeElement(Object obj)

值得注意的是:這兩個方法都必須要判定指定的obj對象是否在當前的向量中,而如

何判定兩個對象是否“相等”呢?這兩個方法都會自動調用向量元素繼承自Object類

的public boolean equals(Object obj)方法,來判定是否有要刪除指定的對象,這

就出現了一個問題:

在Object類中的equals(Object obj)方法,只有當兩個引用型變量同時指向同一

個對象時,才會返回true,但實際remove()方法往往要求當兩個引用型變量指向的

對象具有相同的內容時,就要進行刪除操作,所以一般要在向量的元素的類中對繼承

的equals進行重寫,至于equals方法的重寫,在之前已經說過了

<3>信息的查詢操作

① public boolean contains(Object obj)

判定obj是否在當前的向量對象中,同樣需要調用equals()方法

② public int indexOf(Object obj)

返回第一個與obj相等的向量中的元素的索引

public int lastIndexOf(Object obj)

返回最后一個與obj相等的向量中的元素的索引

③ public E elementAt(int index)

public E get(int index)

都會返回下標為index的向量中的元素

④ public E firstElement()? 返回下標為0 的元素

public E lastElement()?? 返回最后一個元素

⑤ public int capacity()? 返回向量的當前的容量

public int size()????? 返回向量的當前的長度

public boolean isEmpty() 判定當前的向量對象是否為空

⑥ public void setSize(int newSize)

設定向量的長度,要么刪除一部分元素,要么用null補充,如果需要擴大容量的

話,會自動擴容

⑦ public void ensureCapacity(int minimum)

設定向量的容量,擴容規則與上述規定相同

⑧ public void trimToSize()

使向量的容量正好等于向量的常度

6、獲取向量中的各個元素還可以通過迭代器(iterator)來實現

類java.util.Vector有一個成員方法

public Iterator iterator()

該方法會返回當前的向量對象所對應的迭代器,返回類型為Iterator類型,

Iterator類位于java.util.Iterator,所以要用迭代器的話就必須引入該類

在獲得了向量所對應的迭代器后,就可以通過這個迭代器來對各個元素進行操作了

java.util.Iterator類有兩個重要的成員方法:

① public boolean hasNext()? 判定迭代器中是否還有元素

② public E next()?????????? 返回迭代器當前位置的下一位置的元素,之后當前位置

向下移動一個位置

③ public void remove()

從迭代器指向的容器當中刪除迭代器返回的最后一個元素,所以在調用該方法前,至少調用了

一次next()方法,也就是說remove()方法不能夠連續調用

【在迭代器被創建完成之后,其當前位置就自動的指向序列的第一個元素的前一個位置

hasNext()用來判定當前位置的下一個位置是否還有元素

在多次調用next()方法后,當前位置的下一個位置就會不在有元素了,

而且當前位置是不能回到最初位置的,這時再調用next()方法就會報錯

所以說一般迭代器只能從頭到尾用一次】 ????? ????? 如:

String str1 = "123" ;

String str2 = "456" ;

Vector vs = new Vector(2) ;

vs.add(str1) ;

vs.add(str2) ;

Iterator it = vs.iterator() ;

while(it.hasNext())

System.out.println(it.next());

總結

以上是生活随笔為你收集整理的java打印整个向量_Java中Vector向量的用法的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。