Java 遍历集合的数组列表
我目前正在尝试遍历包含字符串的集合的arraylist。看起来是这样的:Java 遍历集合的数组列表,java,loops,iterator,iteration,Java,Loops,Iterator,Iteration,我目前正在尝试遍历包含字符串的集合的arraylist。看起来是这样的: ArrayList<Set<String>> e = new ArrayList<Set<String>>(Size); for(int i = 0; i < e.size(); i++) { for(Object obj: e) { System.out.println(e); } } Arr
ArrayList<Set<String>> e = new ArrayList<Set<String>>(Size);
for(int i = 0; i < e.size(); i++) {
for(Object obj: e) {
System.out.println(e);
}
}
ArrayList e=新的ArrayList(大小);
对于(int i=0;i
我正在尝试访问和修改集合中的字符串(事先打印以查看是否有效),但我找不到方法来访问它们。有什么想法吗?ArrayList e=新的ArrayList(大小);
ArrayList<Set<String>> e = new ArrayList(size);
//Fill your sets with data here
for(Set<String> set : e) { //Iterate through the Arraylist getting every set
for(String element : set) { //Iteretae through the current Set getting every String
System.out.println(element);
}
}
//在这里用数据填充你的集合
对于(Set:e){//遍历Arraylist获取每个集合
for(String-element:set){//iteretate通过当前集合获取每个字符串
系统输出打印项次(元素);
}
}
嘿,我可以帮助您访问部分,因此您应该使用这样的foreach循环
ArrayList<Set<String>> e = new ArrayList<Set<String>>();
for (Set<String> oneSet : e) {
for (String oneString : oneSet) {
oneString
//do something...
}
}
ArrayList e=新的ArrayList();
用于(一套一套:e){
for(字符串oneString:oneSet){
一串
//做点什么。。。
}
}
不能修改字符串;如果要更改集合
s中的一个字符串,必须将其删除并添加新字符串
关于(简单)迭代:
for( var set : e )
{
for( var string : set )
{
out.println( string );
}
}
如果要更改数据结构的内容,请执行以下操作:
for( var set : e )
{
Set<String> newStrings = new HashSet<>();
for( var i = set.iterator(); i.hasNext(); )
{
var string = i.next();
if( isInvalid( string ) )
{
i.remove();
newStrings.add( calculateNewString( string ) );
}
}
set.addAll( newStrings );
}
for(变量集:e)
{
Set newStrings=new HashSet();
for(var i=set.iterator();i.hasNext();)
{
var string=i.next();
if(isInvalid(字符串))
{
i、 删除();
add(calculateNewString(string));
}
}
set.addAll(新闻字符串);
}
更改集合内容的唯一方法是删除或添加元素。你不能更改集合中的现有元素。你到底想做什么,你能给出一个输入输出示例吗?@YCF\u L说的正是我所想的。@Eran:当然你可以更改集合
中的元素!但是,这个元素不能是不可变的(字符串是不可变的…),当更改会对equals()
、hashCode()
和/或最终比较器的比较方法的结果产生影响时,它可能会破坏集合的结构。因此,通常认为就地修改集合的元素是一个坏主意,但也有可能…@tquadrat我的意思是不能替换集合中的元素(不像列表中有一个E集合(int index,E element)
方法来替换给定位置的元素)。