一个List<string> 中包含另外List<string>得个数
时间: 2024-02-20 19:52:32 浏览: 83
要计算一个 List<string> 中包含另一个 List<string> 的个数,你可以使用 LINQ 查询。以下是一个示例代码:
```csharp
using System;
using System.Collections.Generic;
using System.Linq;
class Program
{
static void Main()
{
List<string> list1 = new List<string> { "apple", "banana", "orange", "grape" };
List<string> list2 = new List<string> { "banana", "orange" };
int count = list1.Count(item => list2.Contains(item));
Console.WriteLine("包含的个数: " + count);
}
}
```
输出将是:包含的个数: 2
相关问题
java 一个List<String>集合 和 一个 List<JSONObject>集合 ,求 List<JSONObject>集合中 JSONObject包含 List<String>里的String,用 lambda 表达式处理
可以使用Lambda表达式中的filter()方法和anyMatch()方法来实现这个需求。
假设有两个集合,一个是List<String> stringList,另一个是List<JSONObject> jsonObjectList,现在需要找到jsonObjectList中所有包含stringList中字符串的JSONObject对象。
代码如下:
```java
List<JSONObject> resultList = jsonObjectList.stream()
.filter(jsonObject -> stringList.stream()
.anyMatch(s -> jsonObject.toString().contains(s)))
.collect(Collectors.toList());
```
首先使用stream()方法将jsonObjectList转换成Stream对象,然后使用filter()方法过滤出符合条件的JSONObject对象。在filter()方法中,使用anyMatch()方法来判断jsonObject.toString()是否包含stringList中的某个字符串。
最后使用collect()方法将过滤出来的JSONObject对象收集到一个List集合中并返回即可。
需要注意的是,上述代码中的contains()方法是判断字符串是否包含某个子字符串,如果需要判断JSONObject对象中是否存在某个属性,可以使用get()方法获取属性值,然后再使用contains()方法判断即可。
List<String> 初始化方法 List<String> 初始化方法 List<String> 初始化方法 List<String> 初始化赋值
有多种方法可以初始化和赋值一个 `List<String>` 对象。以下是几种常见的方式:
1. 使用 ArrayList 类的构造函数进行初始化:
```java
List<String> list = new ArrayList<>();
```
这会创建一个空的 `ArrayList` 对象,准备存储字符串。
2. 使用 Arrays 类的 asList() 方法进行初始化:
```java
List<String> list = Arrays.asList("apple", "banana", "orange");
```
这会创建一个包含指定字符串的固定大小的 `List` 对象。请注意,这个方法返回的列表是固定大小的,不支持添加或删除元素。
3. 使用集合的 add() 方法进行逐个添加:
```java
List<String> list = new ArrayList<>();
list.add("apple");
list.add("banana");
list.add("orange");
```
这会创建一个空的 `ArrayList` 对象,并逐个添加字符串元素。
4. 使用集合的 addAll() 方法进行一次性添加多个元素:
```java
List<String> list = new ArrayList<>();
list.addAll(Arrays.asList("apple", "banana", "orange"));
```
这会创建一个空的 `ArrayList` 对象,并一次性将指定的字符串元素添加到列表中。
5. 在初始化时,可以使用双括号初始化(Double Brace Initialization):
```java
List<String> list = new ArrayList<String>() {{
add("apple");
add("banana");
add("orange");
}};
```
这会创建一个 `ArrayList` 对象,并使用双括号语法在初始化时添加字符串元素。
这些方法中的每一种都可以用来初始化和赋值一个 `List<String>` 对象。你可以根据实际需求选择最适合的方法。
阅读全文