導航:首頁 > 編程語言 > javastring動態數組

javastring動態數組

發布時間:2022-08-27 20:24:16

java中動態數組是怎麼回事

動態數組我學習過,在java中的動態數組其實不是真正的動態,是通過數組的拷貝實現的。

importjava.util.Arrays;

/**

*

*@authorfengcl

*email:[email protected]

*2011-10-10

*/

publicclassDinamyArrayDemo{

publicstaticvoidmain(String[]args){

/*

*定義一個int類型的數組,其長度為0

**/

int[]num={};

for(inti=0;i<10;i++){

/*數組每次動態的增加一個長度,

*並給數組賦值

**/

num=Arrays.Of(num,num.length+1);

num[num.length-1]=i;

/*列印出數組的各個元素*/

System.out.println(Arrays.toString(num));

}

/*P.S.:其實動態數組並不是真正的動態,只是通過數組的拷貝來實現

*動態的增加。這是我培訓的時候,老師講的一個小案例

**/

}

}

希望對你有用^_^

Ⅱ java String動態數組覆蓋,並按照某數組規定來排序,返回String。

你把數組按照=分割不就行了,兩個數組分別存前邊的名稱和後邊的值,當然也可以用map
我寫的這個沒在eclipse里寫,可能會有語法錯誤,你看看思路就行了……
Array<String> arr = new Array<String>();
Array<Integer> arr2 = new Array<Integer>();
boolean flag = false;
for (int i=0;i<str.length;i++){
flag = false;
String a = str[i].split("=")[0];
String b = str[i].split("=")[1];
for(int j=0;j<arr.length;j++){
if(arr[j].equal(a)){
arr2[j]+=Integer.valueOf(b);
flag = true;
}
}
if(!flag){
arr.push(str[i].split("=")[0]);
arr2.push(Integer.valueOf(b));
}
}

Ⅲ 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動態二維數組 怎麼動態定義

有兩種實現方法:

  1. 可以用List數組來實現

  2. 可以用map來實現

方法一:用map來實現

比如要創建一個1行、3列的數組,實現方法如下:

public static void main(String[] args) throws CloneNotSupportedException {
Map<Double, List<Double>> myMap = create(1, 3);
}

public static Map<Double, List<Double>> create(double row, double column) {
Map<Double, List<Double>> doubleMap = new HashMap<Double, List<Double>>();

for (double x = 0; x < row; x++) {
for (double y = 0; y < column; y++) {
doubleMap.put(x, new ArrayList<Double>());
}
}
return doubleMap;
}

方法二:

可以用List數組來實現

publicstaticvoidmain(Stringargs[]){

//list作為動態二維數組

List<List<String>>list=newArrayList();

List<String>a1=newArrayList<String>();

List<String>a2=newArrayList<String>();

List<String>a3=newArrayList<String>();

list.add(a1);

list.add(a2);

list.add(a3);

a1.add("string1ina1");

a1.add("string2ina1");

a2.add("string1ina2");

a3.add("string1ina3");

a3.add("string2ina3");

for(inti=0;i<list.size();++i){

for(intj=0;j<list.get(i).size();++j)

System.out.println(list.get(i).get(j));

}

}

Ⅳ 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 string類型的動態數組元素刪除

沒有提供RemoveAt(int index)函數,

你將RemoveAt(0)改成remove(0)應該就可以了

Ⅶ java中可以用動態數組嗎

ArrayList<Long>timeBox=newArrayList<Long>();
longtime=System.currentTimeMillis();
timeBox.add(time);
創建一個ArrayList,在onKeyDown中獲取時間,然後動態添加進去即可。

Ⅷ java 中 String 數組怎麼動態賦值

String[] str = new String[5]; //創建一個長度為5的String(字元串)型的一維數組
str[0] = a; //賦值
str[1] = b;
str[2] = c;
str[3] = d;
str[4] = e;
//也可以創建並賦值
String[] str = {a,b,c,d,e};//二維數組
String[][] str = new String[2][2]; //創建一個2行2列的二維數組
str[0][0] = a0; //賦值
str[0][1] = a1;
str[1][0] = b0;
str[1][1] = b1;
//也可以創建並賦值
類型名[]/[][] 變數名 = new 類型名[]/[][];

Ⅸ Java動態數組代碼是什麼

Java動態數組是一種可以任意伸縮數組長度的對象,在Java中比較常用的是ArrayList<E>,其中<E>是表示泛形,即這個列表只能存放<E>的實例,如:ArrayList <String> list = new ArrayList<String>();那這個list只能存放String。

一般情況,數組定義後就不能改變大小。但很多場景又需要可以改變大小的數組。
他雖然是動態數據,在底層其實還是數組,只不過在數組快要存放滿的時候,自動創建一個更大的數組。

Ⅹ 求教java中一個動態數組中的數據怎樣轉換成String

1.你可以把new ArrayList()改為new ArrayList<String>();
2.可以把ps.setString(1,al[i]);改為ps.setString(1,al[i].toString());
...簡單的就這兩種

閱讀全文

與javastring動態數組相關的資料

熱點內容
脈脈app干什麼用的 瀏覽:357
拽姐是哪個app 瀏覽:858
雲伺服器刪除了還有嗎 瀏覽:232
macbook可以用單片機嘛 瀏覽:307
南陽php招聘 瀏覽:814
去哪裡找按摩師很漂亮的app 瀏覽:818
86x99用簡便演算法計算 瀏覽:830
php截圖flash 瀏覽:274
卸載聯想app哪個好 瀏覽:720
php文字轉圖片 瀏覽:332
豆客後台怎麼加密碼 瀏覽:574
jpg轉換pdf破解版 瀏覽:978
php基礎書籍推薦 瀏覽:778
伺服器與外網不通如何驗證 瀏覽:353
電子版是不是就是文件夾 瀏覽:51
游戲屬性文件加密 瀏覽:464
如何讓安卓手機桌面圖標下移 瀏覽:530
ubuntuphp5環境搭建 瀏覽:101
賭癮解壓視頻 瀏覽:919
晉城移動dns伺服器地址 瀏覽:296