導航:首頁 > 編程語言 > 動態數組java創建

動態數組java創建

發布時間:2022-05-28 04:09:23

java如何定義動態數組

相對於C++中在棧裡面申請數組控制項的話,java裡面的數組都是動態的,因為數組的大小是可以在運行時決定,c++中的棧中申請的數組大小,一定是在編譯時候決定的。
int[] a = new int[345]. 當然在這之後數組的大小就固定了。
當然這個視角是從運行和編譯的時候來看。

我估計你要的是長度可以隨時變化的數組吧,你用ArrayList。
java.util.ArrayList

㈡ JAVA中 靜態,動態創建數組的區別,聯系

區別:
1,數組創建時間不同,靜態的是一定義出來就創建了,動態的則是定義時不創建,使用時才創建,一定意義上節省了內存空間。
2,使用場景不同,一開始就知道數組長度的使用靜態初始化,反之,動態初始化。
聯系:
其實沒有什麼聯系,最恰當的方法用在最適合的場景里就行了

㈢ 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的
你可以去看下泛型 就明白了

㈣ java的靜態數組和動態數組有什麼區別

鏈接: https://pan..com/s/1E79G006IL4fnyjoRL0v9aw

提取碼: d6gp

靜態數組,其實在很多的時候,靜態數組根本不能滿足我們編程的實際需要,比方說我需要在程序運行過程中動態的向數組中添加數據,這時我們的靜態數組大小是固定的,顯然就不能添加數據,要動態添加數據必須要用到動態數組,動態數組中的各個元素類型也是一致的,不過這種類型已經是用一個非常大的類型來攬括—t類型。

㈤ JAVA如何實現動態數組

動態數組用ArrayList 它的底層就是動態數組

ArrayList

ArrayList 集合的存取方式和數組操作很類似,可以按照index順序來存取集合中的元素,但是還是建議採用更通用的迭代器來進行ArrayList的遍歷。
ArrayList與數組最大的區別就是它是可變數組,在初始化ArrayList集合的時候,可以指定一個初始化容量(Capacity 集合中可容納元素的數量),不指定的時候,系統會指定一個默認的容量值。當我們向ArrayList集合添加元素的時候,實際上是存放元素數量(size)在不斷的增加,當容量不變,當數量增長到初始容量大小的時候,因為沒有空間導致元素添加阻塞,這時候該集合的容量會按照一定增長策略自動增長,容量增長後,可以繼續向集合中添加元素。可變數組是ArrayList的優點,但從另外一個角度考慮,容量的增長是需要付出額外的代價的,所以在性能上有所損失。性能問題的一種解決思路是我們可以在向集合添加大量元素之前,根據欲添加元素的數量,預先擴充容量,採用的是ensureCapacity方法。
ArrayList是一種線性表,在內存中是連續存儲的,適合於元素的隨機存取。添加和刪除操作是需要依據添加的位置來定,如果在ArrayList最後元素後面添加和刪除元素,在性能方面還算好,但是如果是在ArrayList中間添加和刪除元素的話,代價就會很大。因為,ArrayList需要維護整個集合元素的順序存儲,所以需要處理欲添加和刪除元素位置之後的所有元素。
ArrayList的實現不是線程安全的。也就是說,如果有多個線程同時操作ArrayList集合對象,而且其中至少有一個線程的操作涉及到集合對象中元素的修改(添加和刪除),則該線程內對集合對象操作的方法需要實現同步。這也是ArrayList與Vector的主要區別。在新的集合框架的實現上,基於性能的考慮,大部分的集合設計都是線程不安全的。如果有同步需求,在用戶自己的實現中可以實現同步,實現的方法有2種:
1、在操作集合對象的方法上使用synchronized關鍵字。
2、如果方法不可修改,則可在定義集合的時候,定義同步化的集合對象(採用Collections工具類的方法),類似:
List list = Collection.synchronizedList(new ArrayList(.....));
(此處深入說明下,在採用Iterator遍歷集合的時候,如果有其他線程修改了集合(添加或刪除操作),那麼Iterator的處理會中止並拋出異常,這是集合處理中的Fail-safe特性)
ArrayList提供的方法中,除了Collection和List的公用方法外,又加入了一些新的方法。

ArrayList(int initialCapacity) 構造器方法增加了集合初始化的最小容量
Void ensureCapacity(int minCapacity) 預擴充ArrayList的容量
Void trimToSize() 把集合的Capacity縮小到Size的大小

下面做一個ArrayList小例子:

import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;
import java.util.List;
import java.util.ListIterator;

/**
* @功能:ArrayList的應用小例子
* @author JackRui
* @時間:2009.03.31
*/
public class ArrayListDemo {

public static void main(String[] args) {
//利用ArrayList本身的特性
System.out.println("利用ArrayList本身的特性");
ArrayList list = new ArrayList();
list.add("aaa");
list.add("bbb");
list.add("ccc");
list.remove("bbb");
list.add("ddd");
for (int i=0,lsize=list.size();i<lsize;i++){
System.out.println(list.get(i));
}
//利用Iterator遍歷
System.out.println("利用Iterator遍歷");
Collection clist = new ArrayList();
clist.addAll(list);//添加元素不能採用Iterator介面
Iterator iter = clist.iterator();
while(iter.hasNext()){
String s = (String)iter.next();
if(s.equals("ddd")){
iter.remove();//可以通過Iterator介面對元素進行刪除
}else{
System.out.println(s);
}
}
//利用ListIterator遍歷
System.out.println("利用ListIterator遍歷");
List list2 = new ArrayList();
ListIterator lit = list2.listIterator();
if(!lit.hasNext()){
lit.add("haha");//可以通過ListIterator介面進行集合元素的添加
lit.previous();
System.out.println(lit.next());
}

}

}
運行結果如下:
利用ArrayList本身的特性
aaa
ccc
ddd
利用Iterator遍歷
aaa
ccc
利用ListIterator遍歷
haha

解析:3種方法中,第一種方法不通用,不建議使用。第2種方法最通用,但僅支持單向遍歷,而且對象的添加需要分開實現。第3種方法可以雙向遍歷,而且可以直接使用ListIterator介面來添加對象。

參考資料:http://fusanjiao.javaeye.com/blog/639963
希望能幫到您,O(∩_∩)O謝謝!

㈥ 如何用java語言創建不定長動態數組

public class intArray {
private int theSize=0;;
private int a_int[]={};
public intArray(int a[]){
this.a_int=a;
this.theSize=a.length;
}
public intArray(){
this.theSize=0;
}

public int getSize(){
return this.theSize;
}
public int getAt(int nIndex){
return this.a_int[nIndex];
}
public void SetAt(int nIndex , int newElement){
this.a_int[nIndex] =newElement;
}
public void add(int nIndex){
int old[] = this.a_int;

this.a_int= new int[this.theSize+1];

for(int i =0;i<old.length;i++){
a_int[i]= old[i];
}
if(this.theSize>0){
a_int[this.theSize]=nIndex;
}else{
a_int[0]=nIndex;
}
this.theSize++;
}
public static void main(String args[]){

intArray array = new intArray();

array.add(1);
array.add(2);
array.add(3);
array.add(4);
array.add(5);
for(int i = 0;i<array.getSize();i++){
System.out.println(array.getAt(i));
}

}
}

再給個任意類型的
public class myArray <AnyType>{
private int theSize=0;
private AnyType theItem[]=null;
public myArray(AnyType a[]){
this.theItem=a;
this.theSize=a.length;
}
public myArray(){

}
public int getSize(){
return this.theSize;
}
public AnyType get(int nIndex){
return this.theItem[nIndex];
}
public void Set(int nIndex , AnyType newElement){
this.theItem[nIndex] =newElement;
}
public void add(AnyType newVal){
AnyType old[]=this.theItem;

this.theItem= (AnyType[]) new Object[theSize+1];
if(theSize!=0){
for(int i =0;i<old.length;i++){
this.theItem[i]= old[i];
}
}
this.theItem[this.theSize]=newVal;
this.theSize++;
}
public static void main(String args[]){
myArray<String> array = new myArray<String>();
array.add("1");
array.add("2");
array.add("3");
array.add("a");
array.add("b");
array.add("c");
for(int i =0;i<array.theSize;i++){
System.out.println(array.get(i));
}
}
}

㈦ 如何在Java裡面創建一個動態的二維數組

方式一:
publicObject[][]create(intm,intn){
returnnewObject[m][n];
}
方式二:
System.arrayCopy();
Arrays.();
都可以實現,你可以網路一下用法,java還可以實現「奇異」數組,數組中的數組長度可以不一致。

㈧ 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的

㈨ java如何動態創建ArrayList並給其賦值

1、ArrayList是動態數組,List是一個介面,不能實例化,需要實例化一個ArrayList;

List list = new ArrayList();
2、使用list .add(任何對象);就可以進行添加了。代碼如下:

bean類
package com.whn.bean;

public class ListBean {
private String name;
private String pwd;

public void setName(String name) {
this.name = name;
}

public String getName() {
return name;
}

public void setPwd(String pwd) {
this.pwd = pwd;
}

public String getPwd() {
return pwd;
}
}

測試類package com.whn.test;

import com.whn.bean.ListBean;

import java.util.ArrayList;
import java.util.List;

public class ListTest {
//測試
public static void main(String[] args) {
List<ListBean> list = new ArrayList<ListBean>();//實例化一個arrayList
//添加
for(int i=10;i<20;i++){
ListBean listBean = new ListBean();
listBean.setName("name"+i);
listBean.setPwd("pwd"+i);
list.add(listBean);//把listBean添加到arrayList中
}

//把數據取出來
for(ListBean lb:list){
System.out.println(lb.getName());
System.out.println(lb.getPwd());
}

}
}

㈩ Java如何定義動態數組

可以用arraylist:
list
數組名=new
arraylist();
然後你想增加元素可用「數組名.add(需要添加的元素)"方法!

閱讀全文

與動態數組java創建相關的資料

熱點內容
可編程軟體分為哪兩種 瀏覽:340
格林什麼app可以看 瀏覽:697
飛盧app仙俠熱賣推薦怎麼樣 瀏覽:722
飛秋上傳文件到共享文件夾 瀏覽:691
伺服器的共享文件夾如何訪問 瀏覽:232
復盛螺桿壓縮機講解 瀏覽:332
柱在基礎插筋需要加密嗎 瀏覽:80
51單片機中斷寄存器 瀏覽:65
壓縮文件後有病毒怎麼辦 瀏覽:618
蘋果ipad怎麼登安卓王者賬號 瀏覽:862
街頭足球伺服器已滿是什麼意思 瀏覽:462
androidspeex迴音消除 瀏覽:133
加密會議什麼意思 瀏覽:34
ubuntu命令行聯網 瀏覽:7
37選7中獎概率及演算法 瀏覽:593
加密狗哪個版本好 瀏覽:619
cisco命令手冊 瀏覽:502
omp演算法c 瀏覽:129
上海浦東機場源碼 瀏覽:885
扣扣加密了忘記密碼如何打開 瀏覽:508