java中二维数组和ArrayList的相互转换

作者&投稿:阚峡 (若有异议请与网页底部的电邮联系)
在Java中,ArrayList与数组如何相互转换,写出例子~

参考Java API 原话:
public static List asList(T... a)
返回一个受指定数组支持的固定大小的列表。(对返回列表的更改会“直接写”到数组。)
此方法同 Collection.toArray() 一起,充当了基于数组的 API 与基于 collection 的 API 之间的桥梁。返回的列表是可序列化的,并且实现了 RandomAccess。

例子:
public static void main(String[] args) {
// 数组转换为List,其中参数为任意类型
List list = Arrays.asList(new String[]{"ss","sss"});
// List转换为数组,参数指定数组的类型
String[] a = list.toArray(new String[0]);
// 打印
System.out.println(list);
for(String b : a){
System.out.print(b+" ");
}

}

原来写的一个练习,和这个异曲同工。自己看看吧

/*
编写一个方法,返回一个double类型的数组;
数组中的元素通过解析字符串中的元素获得;
如:
"1,2;3,4,5;6,7,8"
对应的数组为:
d[0,0]=1.0 d[0,1]=2.0

d[1,0]=3.0 d[1,1]=4.0 d[1,2]=5.0

d[2,0]=6.0 d[2,1]=7.0 d[2,2]=8.0
*/
import java.util.*;

public class SplitString {
public static void main(String[] args) {
System.out.println("Please Input Your String!");
Scanner sc = new Scanner(System.in);
String str = sc.nextLine();
System.out.println();
String[] sFirst = str.split(";");

double[][] d;

d = new double[sFirst.length][];

for(int i=0;i<sFirst.length;i++) {
String[] sSecond = sFirst[i].split(",");
d[i] = new double[sSecond.length];

for(int j=0;j<sSecond.length;j++) {
d[i][j] = Double.parseDouble(sSecond[j]);
}
}

for(int i=0; i<d.length;i++) {
for(int j=0;j<d[i].length; j++) {
System.out.print(d[i][j]+" ");
}
System.out.println();
}
}
}

帮你写好了第一个 当然 第二是同样的道理 你是学JAVA 的不用我再写了 要不然那样太依赖了 反而学不好
import java.util.*;

public class ArrayListTest {

public static void main(String[] args) {
String[][] str = { { "list0", "list2" }, { "list3", "list4" },
{ "list5", "list6" }, { "list7", "list8" } };
ArrayList<String> list = new ArrayList<String>();
for (int i = 0; i < str.length; i++) {
for (int j = 0; j < str[i].length; j++) {
list.add(str[i][j]);
}
}
Iterator it = list.iterator();
while (it.hasNext()) {
System.out.println(it.next());
}
}
}

原来写的一个练习,和这个异曲同工。自己看看吧
/*
编写一个方法,返回一个double类型的数组;
数组中的元素通过解析字符串中的元素获得;
如:
"1,2;3,4,5;6,7,8"
对应的数组为:
d[0,0]=1.0
d[0,1]=2.0
d[1,0]=3.0
d[1,1]=4.0
d[1,2]=5.0
d[2,0]=6.0
d[2,1]=7.0
d[2,2]=8.0
*/
import
java.util.*;
public
class
splitstring
{
public
static
void
main(string[]
args)
{
system.out.println("please
input
your
string!");
scanner
sc
=
new
scanner(system.in);
string
str
=
sc.nextline();
system.out.println();
string[]
sfirst
=
str.split(";");
double[][]
d;
d
=
new
double[sfirst.length][];
for(int
i=0;i<sfirst.length;i++)
{
string[]
ssecond
=
sfirst[i].split(",");
d[i]
=
new
double[ssecond.length];
for(int
j=0;j<ssecond.length;j++)
{
d[i][j]
=
double.parsedouble(ssecond[j]);
}
}
for(int
i=0;
i<d.length;i++)
{
for(int
j=0;j<d[i].length;
j++)
{
system.out.print(d[i][j]+"
");
}
system.out.println();
}
}
}


Java怎样将二维数组中所有的数都相加
public static void main(String[] args) { int [][]a = {{1,2,4,5},{6,7,8,9},{10,11,12,13},{14,15,16,17}}; int sum=0; for(int i = 0; i < a.length; i++){ for(int j = 0; j < a[i].length ;j++){ sum=sum+a[i][j]; System...

java二维数组求和算法
二维数组的话,必须循环行和列,之后求总和即可:public class Test { public static void main(String args[]) throws ParseException { int [][]a = {{1,2,4,5},{6,7,8,9},{10,11,12,13},{14,15,16,17}};int sum =0; \/\/设置sum为0,方便计算 for(int i = 0; i < a....

java语言二维数组中分别求每个数组元素的和
直接循环获取值之后做和即可。举例:int list[][]={{1,2,3,4,5},{6,7,8,9,10},{11,12,13,14,15}}; for(int i=0;i<list.length;i++){ int sum = 0; for(int j=0;j<list[i].length;sum+=list[i][j],j++); System.out.println(sum+"\\n"); } 运...

JAVA求一个2维数组所有元素的总和
例如:一个四行三列的二维数组:public class a{ public static void main(String []args){ int sum=0;int a[][]={{2,3,4},{5,6,7},{3,4,6},{4,6,8}};for(int i=0;i<4;i++)for(int j=0;j<3;j++){ sum+=a[i][j];} System.out.println(sum);} } ...

java中二维数组求每一行的和,把和放在一个新的一维数组中,再求每一行...
public static void main(String[] args) { int[][] arr = { { 1, 2, 3, }, { 4, 5, 6 }, { 7, 8, 9 } };int[] sum = new int[arr.length];float[] avg = new float[arr.length];for (int i = 0; i < arr.length; i++) { sum[i] = 0;for (int j = 0...

JAVA新手问题 输入2个二维数组 并得出相加的结果
import java.util.Scanner;public class C{ public static void main(String args[]){ Scanner in = new Scanner(System.in);System.out.print("请输入二维数组x的行数:");int a = in.nextInt();System.out.print("请输入二维数组x的列数:");int b = in.nextInt();int[][]x = new...

java二维数组怎么定义?
java中使用 [][] 来定义二维数组,定义数组时也可同时初始化。两种初始化形式:格式1、动态初始化 数据类型 数组名 [ ][ ] = new 数据类型[m][n]数据类型 [ ][ ] 数组名 = new 数据类型[m][n]数据类型 [ ] 数组名 [ ] = new 数据类型[m][n]举例:int [ ][ ] arr=new ...

java中用二维数组实现两个矩阵相加
int[][] list1 = {{1, 2, 3}, {1, 2, 3}, {1, 2, 3}};int[][] list2 = {{1, 2, 3}, {1, 2, 3}, {1, 2, 3}};int[][] result = new int[3][3];for(int i=0; i<list1.length; i++) { for(int j=0; j<list1[i].length; j++) { result[i][...

java 二维数组和字符串相互转化?
public static void main(String[] args) { int[][] array = new int[4][4];int count = 0;ArrayToStringTest test = new ArrayToStringTest();\/\/ 赋值一个int[][]for (int i = 0; i < 4; i++) { for (int j = 0; j < 4; j++) { array[i][j] = count;++count;}...

Java二维数组元素相加问题
package retestC8;public class Summation { public static void main(String[] args) { String str[][]=new String[][]{{"1","2"},{"3","4"},{"5","6"},{"7","8"}}; \/\/怎样将这个二维的字符串型数组里面的数值全部加起来? int sum=0; for(int i=0;i<str.lengt...

巴州区18068555173: java中二维数组和ArrayList的相互转换 -
雷寒泰诺: 帮你写好了第一个 当然 第二是同样的道理 你是学JAVA 的不用我再写了 要不然那样太依赖了 反而学不好 import java.util.*;public class ArrayListTest { public static void main(String[] args) {String[][] str = { { "list0", "list2" }, { "list3", "list4...

巴州区18068555173: java的二维数组 -
雷寒泰诺: a[0] = new int[2]; 因为是二维的 所以a 是一个数组对象的数组引用(数组是对象) a[0] 是一个整型数组的数组引用 a[0][0] 才是整型 所以上一句的意思是 给这个整型数组引用 分配一个整型数组 如果没那句 a[0]就是null 说得简单点,一维数组a[]的...

巴州区18068555173: java:java一维数组和二维数组的定义方法 -
雷寒泰诺: (一)一维二维数组的定义: [html] view plain copy/*一维数组定义的几种方法:* int[] x;int x[];二维数组定义的几种方法:int[][] y;int y[][];int[] y[]; int[] x,y[];//x一维、y二维int[] x;int[] y[];-----------a:x[0]=y;//cuo b:y[0]=x;//yes c:y[0][0]=x;...

巴州区18068555173: java二维数组的理解 -
雷寒泰诺: 这种for 循环是 jdk1.5 以后新增的特性,很强大的功能噢 for (int x[] : arr2) { //外层循环变量为一维数组 这句表示,用一个“ 一维数组” 变量“ X ”把“二维数组”变量“arr2”中的数据一组一组的提取出来,在你的示例中,它第一次循环提取 {4,...

巴州区18068555173: 如何理解Java中的二维数组? -
雷寒泰诺: 二维数组可以看成是以一维数组为元素的一维数组.通常将最外层的一维数组称为外维数组;而作为元素的内层数组称为内维数组.如下://声明一个字符串类型的二维数组,其中外维数组的长度为3,内维数组的长度为2.String[][] province = new String[3][2]; 而二维数组的赋值与一维数组类似,它也可以通过中括号和索引来设置初始值,且索引从0开始.如下代码:province[0][0] = “湖南”; province[0][1] = “长沙”; 示例表示的是给二维数组province中第一个内维数组的第一个元素和第二个元素设置初始值.关于二维数组,秒秒学上有比较清楚的解释,你可以了解下的.

巴州区18068555173: java 键盘输入二维数组 -
雷寒泰诺: package ex1;import java.util.Scanner;import java.util.*; public class szsr { /*** 声明二维数组并对二维数组赋值*/public static void main(String[] args) {// TODO Auto-generated method stubScanner input=new Scanner(System.in);...

巴州区18068555173: 如何在Java里面创建一个动态的二维数组?? -
雷寒泰诺: 方式一: public Object[][] create(int m,int n){return new Object[m][n]; } 方式二: System.arrayCopy(); Arrays.copy(); 都可以实现,你可以百度一下用法,java还可以实现“奇异”数组,数组中的数组长度可以不一致.

巴州区18068555173: Java中二维数组的使用 -
雷寒泰诺: 这个问题我测试过了,应该是没问题的吧.public class test{ public static void main(String[] args) { int i=1; float f[][]=new float[2][2]; f[i][i]=1; System.out.println(f[1][1]); } } 上面的程序输出的结果为1.0,你试试看吧.

巴州区18068555173: java 中的ArrayList如何存放二维数组? -
雷寒泰诺: ArrayList list = new ArrayList(); int[][] ary1 = new int[3][4]; int[][] ary2 = new int[2][5];list.add(ary1); list.add(ary2);

巴州区18068555173: Java中什么是二维数组? -
雷寒泰诺: int a[][]=new int[3][4];//这句话是声明并创建了一个3行4列的二维数组a

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网