本文目錄一覽:
java中的vector 是什麼意思呢
java中vector和數據非常類似,兩者之間也經常成對出現,下面是兩者的比較:
1、數組:java arrays的元素個數不能下標越界,從很大程度上保證了java程序的安全性,但創建時必須指定數組的大小,並不能再改變。
2、vector:對比於array,當更多的元素被加入進來以至超出其容量時,vector的size會動態增長,而array容量是定死的。同時,vector在刪除一些元素後,其所有下標大於被刪除元素的元素都依次前移,並獲得新下標比原來的小了)。
java中的Vector
vector和arraylist都是差不多的,會用arraylist就可以用vector,但是arraylist速度比它快,但是如果涉及到多線程,就用vector,例子演示直接看文檔,或者網上查一下,寫了也是廢話,第二不就是容器嗎,一個vector里有一堆裝著string的vector,用法一樣,就是多了個容器,會有類型檢查,其他類型的放不就去
java中vector是什麼?
Vector 類可以實現可增長的對象數組。與數組一樣,它包含可以使用整數索引進行訪問的組件。但是,Vector 的大小可以根據需要增大或縮小,以適應創建 Vector 後進行添加或移除項的操作。 每個向量會試圖通過維護 capacity 和 capacityIncrement 來優化存儲管理。capacity 始終至少應與向量的大小相等;這個值通常比後者大些,因為隨著將組件添加到向量中,其存儲將按 capacityIncrement 的大小增加存儲塊。應用程序可以在插入大量組件前增加向量的容量;這樣就減少了增加的重分配的量。 由 Vector 的 iterator 和 listIterator 方法所返回的迭代器是快速失敗的:如果在迭代器創建後的任意時間從結構上修改了向量(通過迭代器自身的 remove 或 add 方法之外的任何其他方式),則迭代器將拋出 ConcurrentModificationException。因此,面對並發的修改,迭代器很快就完全失敗,而不是冒著在將來不確定的時間任意發生不確定行為的風險。Vector 的 elements 方法返回的 Enumeration 不是 快速失敗的。 注意,迭代器的快速失敗行為不能得到保證,一般來說,存在不同步的並發修改時,不可能作出任何堅決的保證。快速失敗迭代器盡最大努力拋出 ConcurrentModificationException。因此,編寫依賴於此異常的程序的方式是錯誤的,正確做法是:迭代器的快速失敗行為應該僅用於檢測 bug。
Java中vector的用法
import java.util.Scanner;
import java.util.Vector;
public class Test {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner input = new Scanner(System.in);
System.out.print(“請輸入總人數:”);
int p = input.nextInt();
/**** 初始化人員 ***/
VectorInteger v = new VectorInteger();// 初始化人員並進行編號
for (int i = 1; i = p; i++) {
v.add(new Integer(i));
System.out.print(i + ” “);
}
/**** 報號 ***/
int num = 0;
while (v.size() 1) {
for (int i = 0; i v.size(); i++) {
num++;
if ((num % 3) == 0) {
v.remove(i);
i–;
}
}
}
/***** 結果 *****/
for (int i = 0; i v.size(); i++) {
System.out.println(“\n最後剩下的數是:” + v.get(i));
}
}
}
原創文章,作者:HUGH,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/143590.html