❶ java中,如何實現動態為int類型數組增加長度
一般是這樣做的。當訪問越界,或者添加數據超過數組當前的length時候。
重新申請一個大於等於越界長度的數組。
然後通過Sysmem.array將原先數組的內容拷貝到新的內存塊中。
如果刪除了某些元素,使得capacity(容器大小)遠大於實際的length時。可以重新構建trim後的數組並過去。
這也是ArrayList中的實現方法。System.array是一個native方法,拷貝效率比較高。
❷ JAVA中如何動態改變數組長度 動態數組 array
//首先創建一個借坦慎口
packagecom.dp.iterator;
publicinterfaceCollection{
voidadd(Objecto);
intsize();
Iteratoriterator();
}
packagecom.dp.iterator;
importcom.dp.iterator.Collection;
//實現上面的借口
{
//創建一個數組給10個長度。
Object[]objects=newObject[10];
//數組的索引
intindex=0;
publicvoidadd(Objecto){
//判斷當前索引的值是否大於數組的長度
if(index==objects.length){
Object[]newObjects=newObject[objects.length*2];
System.array(objects,0,newObjects,0,objects.length);
objects=newObjects;
}
objects[index]=o;
index++;
}
//相等於孫信槐數組的length方法
publicintsize(){
returnindex;
}
//容器迭代器
publicIteratoriterator(){
returnnewArrayListIterator();
}
//內則友部類
{
privateintcurrentIndex=0;
@Override
publicbooleanhasNext(){
if(currentIndex>=index)returnfalse;
elsereturntrue;
}
@Override
publicObjectnext(){
Objecto=objects[currentIndex];
currentIndex++;
returno;
}
}
}
//測試類
packagecom.dp.iterator;
importcom.dp.iterator.ArrayList;
importcom.dp.iterator.LinkedList;
publicclassTest{
publicstaticvoidmain(String[]args){
Collectionc=newArrayList();
for(inti=0;i<15;i++){
c.add(newCat(i));
}
System.out.println(c.size());
Iteratorit=c.iterator();
while(it.hasNext()){
Objecto=it.next();
System.out.print(o+"");
}
}
}
❸ JAVA怎樣獲取數組長度
1、打開Eclipse,新建項目,在項目src目錄新建一個類,為了更好操作數組,Java為數組提供length屬性,用來獲取數組長度,語法格式如下。
❹ java動態數組長度問題
public class ArrayTest {
// array(Object src, int srcStartIndex, Object dest, int destStartIndex,
// int length)
// 從指定源數組中復制一個數組,復制從指定的位置開始,到目標數組的指定位置結束。
//鋒者燃 srcStartIndex:原數組中要開始復制的第一個元素的位置
// destStartIndex: 目標數組中要開始替換的第一個銀虛元素的位置
// length: 要復制的嫌茄元素的個數
public static void main(String[] args) {
// 靜態初始化兩個長度不同的數組
int src[] = { 1, 2, 3, 4, 5, 6 };
int dest[] = { 10, 9, 8, 7, 6, 5, 4, 3, 2, 1 };
// 將數組src的4個元素到數組dest中
System.array(src, 1, dest, 2, 4);// 輸出數組dest
❺ Java的動態數組怎麼做
Java動態數組是一種可以任意伸縮數組長度的對象,在Java中比較常用的是ArrayList,ArrayList是javaAPI中自帶的java.util.ArrayList。下面介紹一下ArrayList作為Java動態數組的用法。
Java動態數組是一種可以任意伸縮數組長度的對象,在Java中比較常用的是ArrayList,ArrayList是javaAPI中自帶的java.util.ArrayList。下面介紹一下ArrayList作為Java動態數組的用法。
1.語法:add()是添加一個新的元素,
remove()刪除一個元素,
size()獲得ArrayList的長度。
ArrayList的下標是從0開始。
2.示例代碼
import java.util.ArrayList;
public class JavaArrayList {
public static void main(String[]args) {
//Java動態數組的初始化
ArrayList al=new ArrayList();
//向Java動態數組中添加數據
al.add("a");
al.add("b");
al.add("c");
//輸出Java動態數組
for(int i=0;i<al.size();i++) {
String alEach=(String)al.get(i);
System.out.println(alEach);
}
//刪除數組中的某個元素,刪除第二個元素
al.remove(1);
//修改Java動態數組,把新的元素放到第二個位置
al.add(1,"2");
//輸出Java動態數組
for(int i=0;i<al.size();i++) {
String alEach=(String)al.get(i);
System.out.println(alEach);
}
}
}
輸出如下:
a
b
c
a
2
c
PS:java的一維動態數組一般是使用集合的:ArrayList,HashMap等
泛型:
ArrayList<T> a = new ArrayList<T>();
T是你數組里 存的類型 比如String類型的 比如int的
你可以去看下泛型 就明白了