「java元素存放」java集合存放的元素类型

博主:adminadmin 2022-12-25 08:39:06 69

本篇文章给大家谈谈java元素存放,以及java集合存放的元素类型对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

在JAVA中,数组中的元素应按照什么顺序进行存储和编号?

private final int LEN = 8; //数组的默认大小

private Strategy strategy; //数据元素比较策略

private int size; //线性表中数据元素的个数

private Object[] elements; //数据元素数组

public ListArray() {

this(new DefaultStrategy());

}

public ListArray(Strategy strategy){

this.strategy = strategy;

size = 0;

elements = new Object[LEN];

}

//返回线性表的大小,即数据元素的个数。

public int getSize() {

return size;

}

//如果线性表为空返回true,否则返回false。

public boolean isEmpty() {

return size==0;

}

//判断线性表是否包含数据元素e

public boolean contains(Object e) {

for (int i=0; i

if (strategy.equal(e,elements[i])) return true;

return false;

}

//返回数据元素e在线性表中的序号

public int indexOf(Object e) {

for (int i=0; i

if (strategy.equal(e,elements[i])) return i;

return -1;

}

//将数据元素e插入到线性表中i号位置

public void insert(int i, Object e) throws OutOfBoundaryException {

if (i0||isize)

throw new OutOfBoundaryException("错误,指定的插入序号越界。");

if (size = elements.length)

expandSpace();

for (int j=size; ji; j--)

elements[j] = elements[j-1];

elements[i] = e;

size++;

return;

}

private void expandSpace(){

Object[] a = new Object[elements.length*2];

for (int i=0; i

a[i] = elements[i];

elements = a;

}

//将数据元素e插入到元素obj之前

public boolean insertBefore(Object obj, Object e) {

int i = indexOf(obj);

if (i0) return false;

insert(i,e);

return true;

}

//将数据元素e插入到元素obj之后

public boolean insertAfter(Object obj, Object e) {

int i = indexOf(obj);

if (i0) return false;

insert(i+1,e);

return true;

}

//删除线性表中序号为i的元素,并返回之

public Object remove(int i) throws OutOfBoundaryException {

if (i0||i=size)

throw new OutOfBoundaryException("错误,指定的删除序号越界。");

Object obj = elements[i];

for (int j=i; j

elements[j] = elements[j+1];

elements[--size] = null;

return obj;

}

//删除线性表中第一个与e相同的元素

public boolean remove(Object e) {

int i = indexOf(e);

if (i0) return false;

remove(i);

return true;

}

//替换线性表中序号为i的数据元素为e,返回原数据元素

public Object replace(int i, Object e) throws OutOfBoundaryException {

if (i0||i=size)

throw new OutOfBoundaryException("错误,指定的序号越界。");

Object obj = elements[i];

elements[i] = e;

return obj;

}

//返回线性表中序号为i的数据元素

public Object get(int i) throws OutOfBoundaryException {

if (i0||i=size)

throw new OutOfBoundaryException("错误,指定的序号越界。");

return elements[i];

}

}

Java数组在内存中是如何存放的

数组是一种引用数据类型,数组引用变量只是一个引用,数组元素和数组变量在内存里是分开存放的.

实际的数组元素被存储在堆(heap)内存中;数组引用变量是一个引用类型的变量,被存储在栈(stack)内存中.

java如何循环存储集合数据

1、首先相邻的数据元素存放于相邻的内存地址中,整块内存地址是连续的。

2、其次根据元素的位置直接计算出内存地址,直接进行读取。

3、最后读取一个特定位置元素的平均时间复杂度为O即可。

关于java元素存放和java集合存放的元素类型的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

The End

发布于:2022-12-25,除非注明,否则均为首码项目网原创文章,转载请注明出处。