Java 仅将两个ArrayList合并为一个数组
所以我要做的是将两个ArrayList合并为一个,并基于合并的array/list编写文件.csv 我有两个ArrayList,如下所示:Java 仅将两个ArrayList合并为一个数组,java,arrays,Java,Arrays,所以我要做的是将两个ArrayList合并为一个,并基于合并的array/list编写文件.csv 我有两个ArrayList,如下所示: public static ArrayList<String> listingNameList; public static ArrayList<String> listingPriceList; 目前我不知道如何将列表名称列表和列表价格列表组合起来。或者至少我如何将listingNameList和listingPriceList写
public static ArrayList<String> listingNameList;
public static ArrayList<String> listingPriceList;
目前我不知道如何将列表名称列表
和列表价格列表
组合起来。或者至少我如何将listingNameList
和listingPriceList
写入.csv文件,而不必将两者合并?非常感谢您提供的任何信息和建议
编辑:我已经尝试过类似的方法,但它不起作用。for循环运行50次,因为listingNameList
中有50个项目,在listingPriceList
中再次有50个项目
for(int i = 0; i < 50; i++) {
String[][] neededInfo = new String[2][i];
neededInfo[0][i] = listingName_extract[i];
neededInfo[1][i] = listingPrice_extract[i];
}
System.out.println(neededInfo);
for(String[][] s : neededInfo){
fw.write(s[0] + "," + s[1] +'\n');
}
fw.close();
for(int i=0;i<50;i++){
字符串[][]需要的信息=新字符串[2][i];
needededInfo[0][i]=列表名称_摘录[i];
needededInfo[1][i]=列表价格_摘录[i];
}
系统输出打印项次(需要信息);
for(字符串[][]s:neededInfo){
fw.write(s[0]+“,“+s[1]+'\n');
}
fw.close();
我假设您不想创建一个新数组,然后手动添加两个数组的所有值,然后返回,
如果是这样,为什么不这样做呢
private static String[] parsingString(String listingName_temp, String listingPrice_temp) {
String[] returnString_1 = null;
String[] returnString_2 = null;
String[] listingName_extract = listingName_temp.split("\\n");
String[] listingPrice_extract = listingName_temp.split("\\n");
for(int i = 0; i < listingName_extract.length; i++) {
returnString_1[i] = listingName_extract[i];
returnString_2[i] = listingPrice_extract[i];
}
return Stream.concat(Arrays.stream(returnString_1), Arrays.stream(returnString_2)).toArray();
}
private static String[]parsinstring(String listingName\u temp,String listingPrice\u temp){
String[]returnString_1=null;
String[]returnString_2=null;
字符串[]listingName_extract=listingName_temp.split(“\\n”);
字符串[]listingPrice_extract=listingName_temp.split(“\\n”);
for(int i=0;i
拥有字符串[][][]
怎么样
字符串[][]
过了一会儿,我决定将两者结合起来不是一个好的选择。相反,我这样做:
for (int i = 0; i < listingNameList.size(); i++) {
fw.write(String.format("%s, %s\n", listingNameList.get(i), listingPriceList.get(i)));
}
for(int i=0;i
将返回的类型替换为字符串[]怎么样?这是一个由字符串数组组成的字符串数组。或者字符串数组的集合(即列表)。我已经尝试过了,但是在向玩家添加项目/数组时,我无法使用add()
:(它确实有效,但不幸的是,我也需要将数组导出到.csv文件。它确实有效,但不幸的是,我也需要将数组导出到.csv文件。@kingkai我已经添加了导出部分,我认为s应该是String[][[]
,对吗?我按照您的建议执行,但我得到了一个不匹配项。)(无法从String[][]
转换为String[]
)。但是,即使我执行String[][][]
,输出的.csv文件也是空的。:(@kingkai我添加了完整的main方法。请确保关闭文件fw.close();
private static String[][] parsingString(String listingName_temp, String listingPrice_temp) {
String[] listingName_extract = listingName_temp.split("\\n");
String[] listingPrice_extract = listingPrice_temp.split("\\n");
String[][] nameAndPrice = new String[listingName_extract.length][2];
for (int i = 0; i < listingName_extract.length; i++) {
nameAndPrice[i][0] = listingName_extract[i];
nameAndPrice[i][1] = listingPrice_extract[i];
}
return nameAndPrice;
}
parsingString("name1\nname2\nname3", "1\n2\n3")
> [[name1, 1], [name2, 2], [name3, 3]]
private static String[][] parsingString(String listingName_temp, String listingPrice_temp) {
String[] listingName_extract = listingName_temp.split("\\n");
String[] listingPrice_extract = listingPrice_temp.split("\\n");
String[][] nameAndPrice = new String[2][listingName_extract.length];
for (int i = 0; i < listingName_extract.length; i++) {
nameAndPrice[0][i] = listingName_extract[i];
nameAndPrice[1][i] = listingPrice_extract[i];
}
return nameAndPrice;
}
parsingString("name1\nname2\nname3", "1\n2\n3")
> [[name1, name2, name3], [1, 2, 3]]
private static String[][] parsingString(String listingName_temp, String listingPrice_temp) {
String[] listingName_extract = listingName_temp.split("\\n");
String[] listingPrice_extract = listingPrice_temp.split("\\n");
String[][] nameAndPrice = new String[listingName_extract.length][2];
for (int i = 0; i < listingName_extract.length; i++) {
nameAndPrice[i][0] = listingName_extract[i];
nameAndPrice[i][1] = listingPrice_extract[i];
}
return nameAndPrice;
}
public static void main(String[] args) throws IOException {
File file = new File("CardPrices.csv");
FileWriter fw = new FileWriter(file, false); //true to not over ride
String[][] players = parsingString("name1\nname2\nname3", "1\n2\n3");
for (String[] s : players) {
fw.write(s[0] + "," + s[1] + '\n');
}
fw.close();
}
name1,1
name2,2
name3,3
for (int i = 0; i < listingNameList.size(); i++) {
fw.write(String.format("%s, %s\n", listingNameList.get(i), listingPriceList.get(i)));
}