import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
public class JavaTest {
public static void main(String[] args) {
List list=new ArrayList();
int i;
for(i=0;i<=5;i++)list.add("a"+i);
System.out.println("list size:"+list.size());
Set set=new HashSet();
set.add("a1");
set.add("a2");
for(int j=0;j<list.size();j++){
String s=(String)list.get(j);
System.out.println(j);
if(!set.contains(s))list.remove(s);
}
for(i=0;i<list.size();i++)
System.out.println(list.get(i));
}
}
程序作用删除list里不等于set的元素
结果:
0,1,2,3
a1,a2,a4
不知为何会得出这个结果来的。。。
搞不懂for循环,当删除一个时,list.size()减小,但j++只会大,部分数据就删不了
大家有什么办法实现这东西
分享到:
相关推荐
一般使用springjdbc、hibernate的sql查询,库获取到的数据都是List<Map<String, Object>>结果集,如果我们要转化为JavaBean,则需要做一系列的map.get(),然后obj.set()。 此工程中就是解决List<Map<String, Object>...
ArrayList<Product> productList = new ArrayList<>(); for (String id : stringList) { Product product = new Product(id, "defaultName", 0.0); // 假设默认的name和price productList.add(product); } /...
`List<T>`类中包含一个名为`Sort`的方法,用于对List中的元素进行排序。`Sort`方法有多个重载版本,其中最简单的一个是不带任何参数的版本`List<T>.Sort()`。 然而,在尝试使用`Sort()`方法对`List<Student>`进行...
例如,如果你有一个JSON数组,你可能希望将其解析为`IList<string>`或`IList<MyCustomClass>`,具体取决于JSON数据的内容。 C#中解析JSON通常使用的是Json.NET库,这是一个非常流行且功能强大的开源库,可以方便地...
Map<String, String> result = new HashMap<>(); NodeList nodeList = root.getChildNodes(); for (int i = 0; i < nodeList.getLength(); i++) { Node node = nodeList.item(i); if (node.getNodeType() == ...
public static List<String> getList(String key) { return jedis.lrange(key, 0, -1); } ``` 这里,`rpush`将元素添加到列表尾部,`lrange`则返回列表中的所有元素。 **操作Map** Redis中没有直接支持Map的命令...
例如,你可以创建一个`HashSet<int>`来存储不重复的整数,`Add`方法会自动忽略已存在的元素,`Contains`方法则用于检查某个元素是否存在于集合中。 在实际编程中,这些集合类的源码可以帮助我们理解它们的内部实现...
HashSet<string> uniqueSet = new HashSet<string>(stringList); stringList = new List<string>(uniqueSet); ``` 拷贝列表通常通过`List<T>.ToList()`方法实现,这会创建一个与原列表独立的新列表: ```csharp ...
Set<String> targetSet = new HashSet<>(sourceMap.values()); ``` 这里,我们首先创建了一个 Map,然后使用 map.values() 方法将 Map 转换为 Set。 Java 中的集合类型转换非常灵活,掌握这些方法可以帮助我们更好...
List<String> list = new ArrayList<String>(); list.add("你"); list.add("好"); list.add("啊"); Collections.sort(list, new Comparator<String>() { @Override public int compare(String o1, String o2) { ...
- 如果元素类型不实现`IComparable<T>`,或者需要更复杂的排序规则,可以创建一个实现`IComparer<T>`接口的类,然后将其作为参数传递给`Array.Sort()`或`List<T>.Sort()`方法。例如,对一个包含用户对象的列表按...
在Java编程中,将`List<Bean>`转换成`JsonString`是一项常见的任务,尤其是在处理数据交换或存储时。这个过程通常涉及到对象序列化,即将Java对象转换为JSON格式的字符串,以便在网络间传输或者存储在文件中。下面将...
Set<String> set = new HashSet<>(list); ``` - **Set转List**: 将Set转换为List,可以先创建一个新的ArrayList,然后通过迭代Set并添加到ArrayList来完成: ```java Set<String> set = ...; List<String> ...
本文将深入探讨如何在JSP中将`List`, `Set`, `Map`等集合类型的数据传递到Action,然后再通过`<s:iterator>`标签进行遍历显示。这种方式对于数据的展示和交互具有重要的实践意义。 首先,我们需要了解Struts2的工作...
Set<Student> set = new HashSet<>(list); list.clear(); list.addAll(set); ``` 3. 使用Java 8的Stream API去重 Java 8中引入了Stream API,可以使用Stream API来去重List对象列表。 ```java List<Student> list...
在C++标准中,STL被组织为下面的几个头文件:<string>、<vector>、<list>、<deque>、<algorithm>、<iterator>、<set>、<map>、<memory>、<numeric>、<queue>、<functional>、<stack>和<utility>。文件中主要介绍了...
List<String> languages = new ArrayList<>(); languages.add("Java"); languages.add("PHP"); languages.add("Python"); System.out.println(languages); ``` 2. 使用Arrays工具类 Arrays类提供了asList()静态方法...