Ⅰ java動態創建數組並給其賦值
importjava.util.Scanner;
publicclassTest{
publicstaticvoidmain(String[]args){
Scannersc=newScanner(System.in);
System.out.println("請輸入創建回的數組的大小:");
intsize=sc.nextInt();
int[]a=newint[size];
System.out.println("手動為每個數組元素賦值答:");
for(inti=0;i<size;i++){
a[i]=sc.nextInt();
}
System.out.println("動態創建的數組為:");
for(inti=0;i<size;i++){
System.out.print(a[i]+"");
}
}
}
Ⅱ 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動態二維數組 怎麼動態定義
有兩種實現方法:
可以用List數組來實現
可以用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裡面創建一個動態的二維數組
方式一:
publicObject[][]create(intm,intn){
returnnewObject[m][n];
}
方式二:
System.arrayCopy();
Arrays.();
都可以實現,你可以網路一下用法,java還可以實現「奇異」數組,數組中的數組長度可以不一致。
Ⅳ java創建一個數組,動態為數組賦值,升序排序後輸出
public class Test { public static void main(String[] args) { int[] n = new int[10]; Random r = new Random();//實例一個隨機數對象 for(int i = 0; i < n.length; i++) { n[i] = r.nextInt();//將一個隨機數賦給下標為i的數組元素 System.out.println(n[i]);//列印這個數內顯示出來 } int max = n[0];//初始將數容組的第一個數當成最大的數給max變數 for(int i = 1; i < n.length; i++) { //如果max小於下標為i的數組元素,就重新賦值 if(max < n[i]) max = n[i]; } System.out.println("最大:" + max);//顯示最大的數 } }
Ⅵ 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如何定義動態數組
JAVA中的數組沒有動態的
要是想用動態的數據結構就用向量Vector
採用Vector
import java.until.Vector;
例如:
Vector vet==new Vector();
String str="test1";
double t1=0.124;
vet.add(str);
vet.add(String.valueOf(t1));
可以用 vet.size()獲取其大小。
通過vet.get(i);獲取第i個元素(i從0開始),類型為Object,轉換一下就可以了。
具體可以查看jdk api文檔
Ⅷ 如何用java語言創建不定長動態數組
如果是String型其實你可以先把要放入數組中的的元素放進一個StringBuffer里,用分隔符分割,在需要的時候轉化成String在用.split()方法分割放進String[]數組里,這樣快,需要的代碼也不多,int型的話,可以用同樣的方法實現,只是數據類型轉化可能會影響速度。數組好像不支持動態變數的。
Ⅸ java中要聲明一個int型的二維動態數組,如何聲明
public class Demo12 {
public static void main(String[] args) {
int[][] a = new int[3][5];//聲明一個3行5列的二維數組
//第一個括弧里代錶行數,第二個括弧里代表列數
}
}
我這個好像只是一個二維數組,至於你所說的動態二維數組我也不懂
Ⅹ java中怎麼動態創建一個行\列數都不固定的二維數組(最好用ArrayList)
看不明白.
是否是這個Map<Integer,List<Integer>>