1.默认初始大小 10.
2.Vector是一个object数组,Vector的add是线程安全的。
3.Vector的方法 ensureCapacityHelper
private void ensureCapacityHelper(int minCapacity) {
int oldCapacity = elementData.length;
if (minCapacity > oldCapacity) {
Object[] oldData = elementData;
int newCapacity = (capacityIncrement > 0) ?
(oldCapacity + capacityIncrement) : (oldCapacity * 2);
if (newCapacity < minCapacity) {
newCapacity = minCapacity;
}
elementData = Arrays.copyOf(elementData, newCapacity);
}
}
该方法在插入元素时候,判断数组长度 ,如果长度不够,进行扩容,扩容的方式:根据capacityIncrement 的值来判断(capacityIncrement 的值默认为 0, 可以通过vector的构造方法传递:“public Vector(int initialCapacity, int capacityIncrement)”),
如果capacityIncrement 的值大于0,则在原来长度的基础上加上增长基数capacityIncrement ,否则 按原来长度2倍进行扩容。
4.Vector 的 insertElementAt 方法
public synchronized void insertElementAt(E obj, int index) {
modCount++;
if (index > elementCount) {
throw new ArrayIndexOutOfBoundsException(index
+ " > " + elementCount);
}
ensureCapacityHelper(elementCount + 1);
System.arraycopy(elementData, index, elementData, index + 1, elementCount - index);
elementData[index] = obj;
elementCount++;
}
该方法使用system.arraycopy[从指定源数组中复制一个数组,复制从指定的位置开始,到目标数组的指定位置结束],把需要插入元素的位置上的已存在元素往后移动一位,移位后,把需要插入的元素指定到index位置。
分享到:
相关推荐
下面我们将详细介绍 Vector 的用法和相关知识点。 Vector 的构造函数 Vector 类提供了三个构造函数,分别是: * `public Vector(int initialCapacity,int capacityIncrement)`: 创建一个 Vector 对象,...
以上是关于“Vector-Based-Drawing-Application-master_javaswing_JAVASWING画图_dr”项目的核心知识点,涵盖了Java Swing的基本用法、绘图机制以及用户交互设计等多个方面。通过深入理解和实践这些知识,开发者可以...
【Java面试知识点详解】 1. **面向对象的特征** - **抽象**:抽象是将复杂的现实问题简化,关注核心特性,忽略不重要的细节。它包括过程抽象(封装方法)和数据抽象(封装数据)。 - **继承**:继承是类之间的...
Java知识点整理 Java是一种广泛使用的面向对象的编程语言,它具有丰富的API(应用程序接口)和强大的功能。在Java考试中,掌握以下知识点至关重要: 1. **JAVA SE**(Java标准版)是Java的核心部分,包括基础语法...
Java是世界上最流行的编程语言之一,尤其在...这些只是Java Core的一些基础知识点,实际编程中还会涉及更多高级特性和设计模式,如多线程同步机制、I/O流、反射、设计模式等。不断学习和实践是提升Java编程技能的关键。
以上就是Java核心面试知识点整理的核心内容,涵盖了程序员在面试中需要重点掌握的关键概念和知识点,同时这些内容也是Java开发者日常工作中的基础知识。掌握这些知识点,对提升编程能力、优化代码和系统设计都有重要...
### Java私塾面试题知识点详解 #### 1. Heap与Stack的区别 Heap和Stack是Java内存管理中的两个关键概念,它们分别对应着堆内存和栈内存。 - **栈(Stack)**:是一种线性数据结构,遵循先进后出(LIFO)原则。栈...
Java 基础知识点汇总 以下是 Java 基础知识点汇总的详细说明: ### 1. 面向对象的特征 面向对象编程(Object-Oriented Programming,OOP)是一种编程范式,它强调使用对象和类来组织和结构化代码。面向对象编程的...
Java是目前广泛使用的编程语言之一,它在面试中的核心知识点主要集中在Java语言基础、集合框架、...以上知识点是Java程序员在面试中需要掌握的核心内容,理解并能够灵活运用这些知识点对于在面试中脱颖而出至关重要。
在这份笔试题中,我们可以看到涵盖了Java基础知识、Java集合框架、多线程、异常机制、Java ClassLoader、MVC模式、JSP、Struts、EJB、设计模式、XML解析和Open Source项目等多个方面的知识点。 1. JAVA基础知识: ...
根据提供的文件内容,我们可以整理出以下关于JAVA核心知识点的信息: ### 1. JVM内存区域 - **程序计数器**:它是线程私有的区域,用于记录线程执行的字节码指令地址。当线程进行切换时,程序计数器可以记录下线程...
【Java技术资料】-JAVA核心知识点整理 Java是一种广泛使用的高级编程语言,以其跨平台、面向对象、稳定性和高效性而备受青睐。本资料集合涵盖了Java的核心知识点,旨在帮助开发者深入理解和掌握Java语言的关键概念...
标题中提到的“java核心知识.pdf”,意味着接下来的内容会围绕Java编程语言的核心知识点展开。Java是一种广泛使用的面向对象的编程语言,具有跨平台、面向对象、分布式、健壮、安全性等特点。它广泛应用于企业级应用...
在这个系列中,我们将深入探讨以下几个核心知识点: 1. **Java环境搭建**:首先,你需要安装Java Development Kit (JDK) 并配置环境变量,包括JAVA_HOME、PATH和CLASSPATH,以便在命令行中运行Java程序。 2. **...
Java 基础知识点 Java 是一种面向对象的编程语言,它具有抽象、继承、封装、多态性等特征。下面是 Java 基础知识点的详细解释: 1. 面向对象的特征: 面向对象编程的四个基本特征是抽象、继承、封装和多态性。 *...
从给定的文件标题、描述、标签以及部分内容中,我们可以提炼出多个与Java相关的知识点,以下是对这些知识点的详细解析: ### Java基础知识 #### 1. 基本数据类型与包装类 Java提供了多种基本数据类型,包括`byte`,...
### Java知识点复习:深入解析 #### 重要概念:原始类型与引用类型 在Java中,数据类型分为两大类:原始类型和引用类型。原始类型直接存放数据,如`int`、`char`、`float`等,它们在内存中占用固定的字节数,不...
Java 面试题集是求职者准备面试的重要参考资料,涵盖了Java编程语言的关键概念和实践。以下是基于给定内容的一些核心...以上知识点是Java面试中常见的主题,理解并掌握这些概念对于成为一名合格的Java开发者至关重要。