Java 打印带有增强foor循环的arraylist-错误:找不到方法中已定义的符号和变量
我是java新手,正在尝试编写一个方法,使用增强的for循环打印ArrayList。每当我编译时,fore循环都会给我以下错误: 错误:找不到符号 错误:变量list2已在中定义 方法打印列表(ArrayList,ArrayList) for(字符串列表2:list)Java 打印带有增强foor循环的arraylist-错误:找不到方法中已定义的符号和变量,java,arraylist,Java,Arraylist,我是java新手,正在尝试编写一个方法,使用增强的for循环打印ArrayList。每当我编译时,fore循环都会给我以下错误: 错误:找不到符号 错误:变量list2已在中定义 方法打印列表(ArrayList,ArrayList) for(字符串列表2:list) 公共静态无效打印列表(ArrayList列表1、ArrayList列表2) { System.out.println(“list1.txt包含:”); for(字符串列表1:list) System.out.println(lis
公共静态无效打印列表(ArrayList列表1、ArrayList列表2)
{
System.out.println(“list1.txt包含:”);
for(字符串列表1:list)
System.out.println(list1+“”);
System.out.println(“list2.txt包含:”);
for(字符串列表2:list)
System.out.println(list2+“”);
}
有人能给我解释一下这些错误是什么意思吗?for each循环的用法不正确:
for(String list1: list)
这条线有两个问题:
String
的新变量名list1
,但您在范围中已经有了这样的变量名列表
。基本上语法是:for(#项:#集合)
for(String item : list1)
阅读更多关于
打印列表的更好方法是使用
String.join
,如图所示
for each循环的使用不正确:
for(String list1: list)
这条线有两个问题:
String
的新变量名list1
,但您在范围中已经有了这样的变量名列表
。基本上语法是:for(#项:#集合)
for(String item : list1)
阅读更多关于
打印列表的更好方法是使用
String.join
,如图所示
您已经在
中为每个循环交换了列表和列表1
(和列表2
)。但是,我首先建议您编程到列表
界面。假设您使用的是Java 8+,我更喜欢stream()
内容并使用收集器将其连接起来。像
public static void printLists(List<String> list1, List<String> list2) {
System.out.printf("list1.txt contains: %s%n", list1.stream()
.collect(Collectors.joining(" ")));
System.out.printf("list2.txt contains: %s%n", list2.stream()
.collect(Collectors.joining(" ")));
}
您已经在中为每个循环交换了列表和列表1
(和列表2
)。但是,我首先建议您编程到列表
界面。假设您使用的是Java 8+,我更喜欢stream()
内容并使用收集器将其连接起来。像
public static void printLists(List<String> list1, List<String> list2) {
System.out.printf("list1.txt contains: %s%n", list1.stream()
.collect(Collectors.joining(" ")));
System.out.printf("list2.txt contains: %s%n", list2.stream()
.collect(Collectors.joining(" ")));
}
谢谢你的回答和澄清!我将查看链接,并在时间锁定消失后接受:)。@starlight-不客气:)让我知道进展情况:)感谢您的回答和澄清!我将检查该链接,并在时间锁定消失后接受:)。@starlight-不客气:)让我知道进展情况:)