C#(五十八)之C#List

前几天,看同事写的代码中有list相关的字眼,百度了一下,原来是C#中list泛型集合。

了解一下。

List:泛型集合,List<T>类是 ArrayList 类的泛型等效类。该类使用大小可按需动态增加的数组实现 IList<T> 泛型接口。 

泛型的好处: 它为使用c#语言编写面向对象程序增加了极大的效力和灵活性。不会强行对值类型进行装箱和拆箱,或对引用类型进行向下强制类型转换,所以性能得到提高。 

使用命名空间:

<span style="background-color:#282c34"><span style="color:#abb2bf"><span style="color:#f92672">using</span> <span style="color:#f92672">System</span>.Collections.Generic;</span></span>

list一些方法和属性:

1.      Capacity 用于获取或设置List可容纳元素的数量。当数量超过容量时,这个值会自动增长。您可以设置这个值以减少容量,也可以调用trin()方法来减少容量以适合实际的元素数目。

2.      Count 属性,用于获取数组中当前元素数量

3.      Item( ) 通过指定索引获取或设置元素。对于List类来说,它是一个索引器。

4.      Add( ) 在List中添加一个对象的公有方法

5.      AddRange( ) 公有方法,在List尾部添加实现了ICollection接口的多个元素

6.      BinarySearch( ) 重载的公有方法,用于在排序的List内使用二分查找来定位指定元素.

7.      Clear( ) 在List内移除所有元素

8.      Contains( ) 测试一个元素是否在List内

9.      CopyTo( ) 重载的公有方法,把一个List拷贝到一维数组内

10.    Exists( ) 测试一个元素是否在List内

11.    Find( ) 查找并返回List内的出现的第一个匹配元素

12.    FindAll( ) 查找并返回List内的所有匹配元素

13.    GetEnumerator( ) 重载的公有方法,返回一个用于迭代List的枚举器

14.    Getrange( ) 拷贝指定范围的元素到新的List内

15.    IndexOf( ) 重载的公有方法,查找并返回每一个匹配元素的索引

16.    Insert( ) 在List内插入一个元素

17.    InsertRange( ) 在List内插入一组元素

18.    LastIndexOf( ) 重载的公有方法,,查找并返回最后一个匹配元素的索引

19.    Remove( ) 移除与指定元素匹配的第一个元素

20.    RemoveAt( ) 移除指定索引的元素

21.    RemoveRange( ) 移除指定范围的元素

22.    Reverse( ) 反转List内元素的顺序

23.    Sort( ) 对List内的元素进行排序

24.    ToArray( ) 把List内的元素拷贝到一个新的数组内

25.    trimToSize( ) 将容量设置为List中元素的实际数目

 

1:声明list

①、List<T> mList = new List<T>();  
T为列表中元素类型,现在以string类型作为例子

<span style="background-color:#282c34"><span style="color:#abb2bf">List<<span style="color:#e6c07b">string</span>> mList = <span style="color:#f92672">new</span> List<<span style="color:#e6c07b">string</span>>();</span></span>

②、List<T> testList =new List<T> (IEnumerable<T> collection);

以一个集合作为参数创建List:

<span style="background-color:#282c34"><span style="color:#abb2bf"><span style="color:#e6c07b">string</span>[] arr = { <span style="color:#98c379">"Ha"</span>, <span style="color:#98c379">"Hunter"</span>, <span style="color:#98c379">"Tom"</span>, <span style="color:#98c379">"Lily"</span>, <span style="color:#98c379">"Jay"</span>, <span style="color:#98c379">"Jim"</span>, <span style="color:#98c379">"Kuku"</span>, <span style="color:#98c379">"Locu"</span> };
List<<span style="color:#e6c07b">string</span>> mList = <span style="color:#f92672">new</span> List<<span style="color:#e6c07b">string</span>>(arr);</span></span>

2:添加元素 Add

添加一个元素

语法: List. Add(T item)  

<span style="background-color:#282c34"><span style="color:#abb2bf">mList.<span style="color:#e2b93d">Add(<span style="color:#9ccc65">"cmailla"</span>)</span>;
foreach (<span style="color:#e6c07b">string</span> item <span style="color:#f92672">in</span> mList)
{Console.<span style="color:#e2b93d">WriteLine(item)</span>;
}</span></span>

3:指定位置添加元素 Insert

语法: Insert(int index, T item); 

<span style="background-color:#282c34"><span style="color:#abb2bf">            mList.Insert(<span style="color:#d19a66">0</span>,<span style="color:#98c379">"qwert"</span>);foreach (<span style="color:#e6c07b">string</span> <span style="color:#e6c07b">item</span> <span style="color:#f92672">in</span> mList){Console.WriteLine(<span style="color:#e6c07b">item</span>);}Console.WriteLine(<span style="color:#98c379">"
"</span>);</span></span>

4:添加元素集合 AddRange

语法: List. AddRange(IEnumerable<T> collection)   

<span style="background-color:#282c34"><span style="color:#abb2bf">            <span style="color:#e6c07b">string</span>[] dfg = { <span style="color:#98c379">"hiocvhi"</span>,<span style="color:#98c379">"jioosdfhio"</span>,<span style="color:#98c379">"erw"</span>};mList.AddRange(dfg);foreach (<span style="color:#e6c07b">string</span> <span style="color:#e6c07b">item</span> <span style="color:#f92672">in</span> mList){Console.WriteLine(<span style="color:#e6c07b">item</span>);}Console.WriteLine(<span style="color:#98c379">"
"</span>);</span></span>

5:删除指定元素

语法:List. Remove(T item)

<span style="background-color:#282c34"><span style="color:#abb2bf">            mList.Remove(<span style="color:#98c379">"erw"</span>);foreach (<span style="color:#e6c07b">string</span> <span style="color:#e6c07b">item</span> <span style="color:#f92672">in</span> mList){Console.WriteLine(<span style="color:#e6c07b">item</span>);}Console.WriteLine(<span style="color:#98c379">"
"</span>);</span></span>

6:删除指定下标元素

语法:List. RemoveAt(int index);   

<span style="background-color:#282c34"><span style="color:#abb2bf">            mList.RemoveAt(<span style="color:#d19a66">3</span>);foreach (<span style="color:#e6c07b">string</span> <span style="color:#e6c07b">item</span> <span style="color:#f92672">in</span> mList){Console.WriteLine(<span style="color:#e6c07b">item</span>);}Console.WriteLine(<span style="color:#98c379">"
"</span>);</span></span>

7:从下标index开始,删除count个元素

语法:List. RemoveRange(int index, int count);

<span style="background-color:#282c34"><span style="color:#abb2bf">            mList.RemoveRange(<span style="color:#d19a66">3</span>,<span style="color:#d19a66">5</span>);foreach (<span style="color:#e6c07b">string</span> <span style="color:#e6c07b">item</span> <span style="color:#f92672">in</span> mList){Console.WriteLine(<span style="color:#e6c07b">item</span>);}Console.WriteLine(<span style="color:#98c379">"
"</span>);</span></span>

8:判断某个元素是否在该List中:

语法:List. Contains(T item)   返回值为:true/false

<span style="background-color:#282c34"><span style="color:#abb2bf">            bool s = mList.Contains(<span style="color:#98c379">"Ha"</span>);Console.WriteLine(s);Console.WriteLine(<span style="color:#98c379">"</span>
<span style="color:#98c379">");</span></span></span>

9:给List里面元素排序:

语法: List. Sort ()   默认是元素第一个字母按升序

<span style="background-color:#282c34"><span style="color:#abb2bf">            mList<span style="color:#d19a66">.Sort</span>();foreach (var item in mList){Console<span style="color:#d19a66">.WriteLine</span>(item);}Console<span style="color:#d19a66">.WriteLine</span>("
");</span></span>

10:给List里面元素顺序反转:

语法: List. Reverse ()   可以与List. Sort ()配合使用,达到想要的效果

<span style="background-color:#282c34"><span style="color:#abb2bf">            mList<span style="color:#d19a66">.Reverse</span>();foreach (var item in mList){Console<span style="color:#d19a66">.WriteLine</span>(item);}Console<span style="color:#d19a66">.WriteLine</span>("
");</span></span>

11:List清空:

语法:List. Clear () 

<span style="background-color:#282c34"><span style="color:#abb2bf">            mList<span style="color:#d19a66">.Clear</span>();foreach (var item in mList){Console<span style="color:#d19a66">.WriteLine</span>(item);}Console<span style="color:#d19a66">.WriteLine</span>("
");</span></span>

12:ist.FindAll方法:检索与指定谓词所定义的条件相匹配的所有元素 

语法:public List<T> FindAll(Predicate<T> match);

Predicate是对方法的委托,如果传递给它的对象与委托中定义的条件匹配,则该方法返回 true。当前 List 的元素被逐个传递给Predicate委托,并在 List 中向前移动,从第一个元素开始,到最后一个元素结束。当找到匹配项时处理即停止。

Predicate 可以委托给一个函数或者一个拉姆达表达式:

正常委托:

<span style="background-color:#282c34"><span style="color:#abb2bf">        List<<span style="color:#e6c07b">string</span>> subList = mList.FindAll(ListFind); <span style="color:#b18eb1"><em>//委托给ListFind函数</em></span><span style="color:#b18eb1"><em>//ListFind函数</em></span><span style="color:#61aeee"><span style="color:#f92672">public</span> <span style="color:#f92672">static</span> <span style="color:#e6c07b">bool</span> <span style="color:#61aeee">ListFind</span>(<span style="color:#a6e22e"><span style="color:#e6c07b">string</span> name</span>)</span>{Console.WriteLine(name);<span style="color:#f92672">if</span> (name.Length > <span style="color:#d19a66">3</span>){<span style="color:#f92672">return</span> <span style="color:#56b6c2">true</span>;}<span style="color:#f92672">return</span> <span style="color:#56b6c2">false</span>;}</span></span>

匿名委托:

<span style="background-color:#282c34"><span style="color:#abb2bf">List<<span style="color:#e6c07b">string</span>> subList = mList.<span style="color:#e2b93d">FindAll( delegate(string name)</span> {Console.<span style="color:#e2b93d">WriteLine(name)</span>;<span style="color:#f92672">if</span> (name.Length > <span style="color:#d19a66">3</span>){return <span style="color:#56b6c2">true</span>;}return <span style="color:#56b6c2">false</span>;
});</span></span>

Lambda表达式:

<span style="background-color:#282c34"><span style="color:#abb2bf">List<string> subList = mList.FindAll(<span style="color:#61aeee"><span style="color:#a6e22e">name</span> =></span> {<span style="color:#e6c07b">Console</span>.WriteLine(name);<span style="color:#f92672">if</span> (name.<span style="color:#e6c07b">Length</span> > <span style="color:#d19a66">3</span>){<span style="color:#f92672">return</span> <span style="color:#56b6c2">true</span>;}<span style="color:#f92672">return</span> <span style="color:#56b6c2">false</span>;
});</span></span>

13:List.Find 方法:搜索与指定谓词所定义的条件相匹配的元素,并返回整个 List 中的第一个匹配元素。 

语法:public T Find(Predicate<T> match);

<span style="background-color:#282c34"><span style="color:#abb2bf"><span style="color:#e6c07b">string</span> listFind1 = mList.<span style="color:#e2b93d">Find(ListFind)</span>;  <span style="color:#b18eb1"><em>//委托给ListFind函数</em></span>
Console.<span style="color:#e2b93d">WriteLine(listFind1)</span>;</span></span>

14:List.FindLast 方法:搜索与指定谓词所定义的条件相匹配的元素,并返回整个 List 中的最后一个匹配元素。

语法:public T FindLast(Predicate<T> match);

<span style="background-color:#282c34"><span style="color:#abb2bf"><span style="color:#e6c07b">string</span> listFind2 = mList.<span style="color:#e2b93d">FindLast(ListFind)</span>;  <span style="color:#b18eb1"><em>//委托给ListFind函数</em></span>
Console.<span style="color:#e2b93d">WriteLine(listFind2)</span>;</span></span>

15:List.TrueForAll方法:确定是否 List 中的每个元素都与指定的谓词所定义的条件相匹配。

语法:public bool TrueForAll(Predicate<T> match);

<span style="background-color:#282c34"><span style="color:#abb2bf"><span style="color:#e6c07b">bool</span> flag = mList.<span style="color:#e2b93d">TrueForAll(delegate(string name)</span>
{Console.<span style="color:#e2b93d">WriteLine(name)</span>;<span style="color:#f92672">if</span> (name.Length > <span style="color:#d19a66">3</span>){return <span style="color:#56b6c2">true</span>;}return <span style="color:#56b6c2">false</span>;
});</span></span>

16:List.Take(n)方法:  获得前n行 返回值为IEnumetable<T>,T的类型与List<T>的类型一样:就是复制

<span style="background-color:#282c34"><span style="color:#abb2bf">            IEnumerable<<span style="color:#e6c07b">string</span>> mmmlist = mList.Take(<span style="color:#d19a66">3</span>);foreach (<span style="color:#e6c07b">string</span> <span style="color:#e6c07b">item</span> <span style="color:#f92672">in</span> mmmlist){Console.WriteLine(<span style="color:#e6c07b">item</span>);}Console.WriteLine(<span style="color:#98c379">"
"</span>);</span></span>

17:List.Where方法:检索与指定谓词所定义的条件相匹配的所有元素。跟List.FindAll方法类似。

使用该方法定义存储集合的元素开头是:IEnumerable

<span style="background-color:#282c34"><span style="color:#abb2bf">            IEnumerable<<span style="color:#e6c07b">string</span>> whereList = mList.Where(ListFind);foreach (var <span style="color:#e6c07b">item</span> <span style="color:#f92672">in</span> whereList){Console.WriteLine(<span style="color:#e6c07b">item</span>);}Console.WriteLine(<span style="color:#98c379">"
"</span>);</span></span>

18:List.RemoveAll方法:移除与指定的谓词所定义的条件相匹配的所有元素。

语法: public int RemoveAll(Predicate<T> match);

<span style="background-color:#282c34"><span style="color:#abb2bf">            mList.RemoveAll<span style="color:#e6c07b">(name</span> => {<span style="color:#f92672">if</span> <span style="color:#e6c07b">(name</span>.Length <= <span style="color:#d19a66">6</span>){<span style="color:#f92672">return</span><span style="color:#e6c07b"> true</span>;}<span style="color:#f92672">else</span> {<span style="color:#f92672">return</span><span style="color:#e6c07b"> false</span>;}});foreach (var <span style="color:#d19a66">item</span> <span style="color:#f92672">in</span> mList){Console.WriteLine(<span style="color:#d19a66">item</span>);}Console.WriteLine(<span style="color:#98c379">"
"</span>);</span></span>

测试使用全部代码:

<span style="background-color:#282c34"><span style="color:#abb2bf"><span style="color:#d19a66">using</span> <span style="color:#e6c07b">System</span>;
<span style="color:#d19a66">using</span> <span style="color:#e6c07b">System</span>.Collections.Generic;
<span style="color:#d19a66">using</span> <span style="color:#e6c07b">System</span>.Linq;
<span style="color:#d19a66">using</span> <span style="color:#e6c07b">System</span>.Text;
<span style="color:#d19a66">using</span> <span style="color:#e6c07b">System</span>.Threading.Tasks;<span style="color:#d19a66">namespace</span> <span style="color:#61aeee">listys</span>
{<span style="color:#f92672">class</span> <span style="color:#e6c07b">Program</span>{<span style="color:#f92672">static</span> <span style="color:#d19a66">void</span> <span style="color:#e6c07b">Main</span>(<span style="color:#d19a66">string</span>[] <span style="color:#d19a66">args</span>){<span style="color:#b18eb1"><em>// 声明列表</em></span><span style="color:#b18eb1"><em>// List<string> mList = new List<string>();</em></span><span style="color:#d19a66">string</span>[] <span style="color:#d19a66">arr</span> <span style="color:#f92672">=</span> { <span style="color:#98c379">"Ha"</span>, <span style="color:#98c379">"Hunter"</span>, <span style="color:#98c379">"Tom"</span>, <span style="color:#98c379">"Lily"</span>, <span style="color:#98c379">"Jay"</span>, <span style="color:#98c379">"Jim"</span>, <span style="color:#98c379">"Kuku"</span>, <span style="color:#98c379">"Locu"</span> };<span style="color:#e6c07b">List</span><span style="color:#f92672"><</span><span style="color:#d19a66">string</span><span style="color:#f92672">></span> <span style="color:#d19a66">mList</span> <span style="color:#f92672">=</span> <span style="color:#d19a66">new</span> <span style="color:#e6c07b">List</span><span style="color:#f92672"><</span><span style="color:#d19a66">string</span><span style="color:#f92672">></span>(<span style="color:#d19a66">arr</span>);<span style="color:#e6c07b">Console</span>.WriteLine(<span style="color:#d19a66">mList</span>.Count);<span style="color:#d19a66">mList</span>.Add(<span style="color:#98c379">"cmailla"</span>);<span style="color:#61aeee">foreach</span> (<span style="color:#d19a66">string</span> <span style="color:#d19a66">item</span> <span style="color:#f92672">in</span> <span style="color:#d19a66">mList</span>){<span style="color:#e6c07b">Console</span>.WriteLine(<span style="color:#d19a66">item</span>);}<span style="color:#e6c07b">Console</span>.WriteLine(<span style="color:#98c379">"
"</span>);<span style="color:#d19a66">mList</span>.Insert(<span style="color:#d19a66">0</span>,<span style="color:#98c379">"qwert"</span>);<span style="color:#61aeee">foreach</span> (<span style="color:#d19a66">string</span> <span style="color:#d19a66">item</span> <span style="color:#f92672">in</span> <span style="color:#d19a66">mList</span>){<span style="color:#e6c07b">Console</span>.WriteLine(<span style="color:#d19a66">item</span>);}<span style="color:#e6c07b">Console</span>.WriteLine(<span style="color:#98c379">"
"</span>);<span style="color:#d19a66">string</span>[] <span style="color:#d19a66">dfg</span> <span style="color:#f92672">=</span> { <span style="color:#98c379">"hiocvhi"</span>,<span style="color:#98c379">"jioosdfhio"</span>,<span style="color:#98c379">"erw"</span>};<span style="color:#d19a66">mList</span>.AddRange(<span style="color:#d19a66">dfg</span>);<span style="color:#61aeee">foreach</span> (<span style="color:#d19a66">string</span> <span style="color:#d19a66">item</span> <span style="color:#f92672">in</span> <span style="color:#d19a66">mList</span>){<span style="color:#e6c07b">Console</span>.WriteLine(<span style="color:#d19a66">item</span>);}<span style="color:#e6c07b">Console</span>.WriteLine(<span style="color:#98c379">"
"</span>);<span style="color:#d19a66">mList</span>.Remove(<span style="color:#98c379">"erw"</span>);<span style="color:#61aeee">foreach</span> (<span style="color:#d19a66">string</span> <span style="color:#d19a66">item</span> <span style="color:#f92672">in</span> <span style="color:#d19a66">mList</span>){<span style="color:#e6c07b">Console</span>.WriteLine(<span style="color:#d19a66">item</span>);}<span style="color:#e6c07b">Console</span>.WriteLine(<span style="color:#98c379">"
"</span>);<span style="color:#d19a66">mList</span>.RemoveAt(<span style="color:#d19a66">3</span>);<span style="color:#61aeee">foreach</span> (<span style="color:#d19a66">string</span> <span style="color:#d19a66">item</span> <span style="color:#f92672">in</span> <span style="color:#d19a66">mList</span>){<span style="color:#e6c07b">Console</span>.WriteLine(<span style="color:#d19a66">item</span>);}<span style="color:#e6c07b">Console</span>.WriteLine(<span style="color:#98c379">"
"</span>);<span style="color:#d19a66">mList</span>.RemoveRange(<span style="color:#d19a66">3</span>,<span style="color:#d19a66">5</span>);<span style="color:#61aeee">foreach</span> (<span style="color:#d19a66">string</span> <span style="color:#d19a66">item</span> <span style="color:#f92672">in</span> <span style="color:#d19a66">mList</span>){<span style="color:#e6c07b">Console</span>.WriteLine(<span style="color:#d19a66">item</span>);}<span style="color:#e6c07b">Console</span>.WriteLine(<span style="color:#98c379">"
"</span>);<span style="color:#d19a66">bool</span> <span style="color:#d19a66">s</span> <span style="color:#f92672">=</span> <span style="color:#d19a66">mList</span>.Contains(<span style="color:#98c379">"Ha"</span>);<span style="color:#e6c07b">Console</span>.WriteLine(<span style="color:#d19a66">s</span>);<span style="color:#e6c07b">Console</span>.WriteLine(<span style="color:#98c379">"
"</span>);<span style="color:#d19a66">mList</span>.Sort();<span style="color:#61aeee">foreach</span> (<span style="color:#f92672">var</span> <span style="color:#d19a66">item</span> <span style="color:#f92672">in</span> <span style="color:#d19a66">mList</span>){<span style="color:#e6c07b">Console</span>.WriteLine(<span style="color:#d19a66">item</span>);}<span style="color:#e6c07b">Console</span>.WriteLine(<span style="color:#98c379">"
"</span>);<span style="color:#d19a66">mList</span>.Reverse();<span style="color:#61aeee">foreach</span> (<span style="color:#f92672">var</span> <span style="color:#d19a66">item</span> <span style="color:#f92672">in</span> <span style="color:#d19a66">mList</span>){<span style="color:#e6c07b">Console</span>.WriteLine(<span style="color:#d19a66">item</span>);}<span style="color:#e6c07b">Console</span>.WriteLine(<span style="color:#98c379">"
"</span>);<span style="color:#b18eb1"><em>/*mList.Clear();foreach (var item in mList){Console.WriteLine(item);}Console.WriteLine("
");//*/</em></span><span style="color:#b18eb1"><em>// 正常委托</em></span><span style="color:#b18eb1"><em>// List<string> subList = mList.FindAll(ListFind); //委托给ListFind函数</em></span><span style="color:#b18eb1"><em>// 匿名委托</em></span><span style="color:#b18eb1"><em>/*List<string> subList = mList.FindAll( delegate(string name) {Console.WriteLine(name);if (name.Length > 3){return true;}return false;});//*/</em></span><span style="color:#e6c07b">List</span><span style="color:#f92672"><</span><span style="color:#d19a66">string</span><span style="color:#f92672">></span> <span style="color:#d19a66">subList</span> <span style="color:#f92672">=</span> <span style="color:#d19a66">mList</span>.FindAll(<span style="color:#d19a66">name</span> <span style="color:#f92672">=</span><span style="color:#f92672">></span> {<span style="color:#e6c07b">Console</span>.WriteLine(<span style="color:#d19a66">name</span>);<span style="color:#f92672">if</span> (<span style="color:#d19a66">name</span>.Length <span style="color:#f92672">></span> <span style="color:#d19a66">3</span>){<span style="color:#f92672">return</span> <span style="color:#56b6c2">true</span>;}<span style="color:#f92672">return</span> <span style="color:#56b6c2">false</span>;});<span style="color:#61aeee">foreach</span> (<span style="color:#d19a66">string</span> <span style="color:#d19a66">sss</span> <span style="color:#f92672">in</span> <span style="color:#d19a66">subList</span>){<span style="color:#e6c07b">Console</span>.WriteLine(<span style="color:#98c379">"element in subList: "</span> <span style="color:#f92672">+</span> <span style="color:#d19a66">sss</span>);}<span style="color:#d19a66">string</span> <span style="color:#d19a66">listFind1</span> <span style="color:#f92672">=</span> <span style="color:#d19a66">mList</span>.Find(<span style="color:#e6c07b">ListFind</span>);  <span style="color:#b18eb1"><em>//委托给ListFind函数</em></span><span style="color:#e6c07b">Console</span>.WriteLine(<span style="color:#d19a66">listFind1</span>);<span style="color:#d19a66">string</span> <span style="color:#d19a66">listFind2</span> <span style="color:#f92672">=</span> <span style="color:#d19a66">mList</span>.FindLast(<span style="color:#e6c07b">ListFind</span>);  <span style="color:#b18eb1"><em>//委托给ListFind函数</em></span><span style="color:#e6c07b">Console</span>.WriteLine(<span style="color:#d19a66">listFind2</span>);<span style="color:#d19a66">bool</span> <span style="color:#d19a66">flag</span> <span style="color:#f92672">=</span> <span style="color:#d19a66">mList</span>.TrueForAll(<span style="color:#61aeee">delegate</span>(string name){<span style="color:#e6c07b">Console</span>.WriteLine(<span style="color:#d19a66">name</span>);<span style="color:#f92672">if</span> (<span style="color:#d19a66">name</span>.Length <span style="color:#f92672">></span> <span style="color:#d19a66">3</span>){<span style="color:#f92672">return</span> <span style="color:#56b6c2">true</span>;}<span style="color:#f92672">return</span> <span style="color:#56b6c2">false</span>;});<span style="color:#e6c07b">Console</span>.WriteLine(<span style="color:#d19a66">flag</span>);<span style="color:#e6c07b">Console</span>.WriteLine(<span style="color:#98c379">"
"</span>);<span style="color:#e6c07b">IEnumerable</span><span style="color:#f92672"><</span><span style="color:#d19a66">string</span><span style="color:#f92672">></span> <span style="color:#d19a66">mmmlist</span> <span style="color:#f92672">=</span> <span style="color:#d19a66">mList</span>.Take(<span style="color:#d19a66">3</span>);<span style="color:#61aeee">foreach</span> (<span style="color:#d19a66">string</span> <span style="color:#d19a66">item</span> <span style="color:#f92672">in</span> <span style="color:#d19a66">mmmlist</span>){<span style="color:#e6c07b">Console</span>.WriteLine(<span style="color:#d19a66">item</span>);}<span style="color:#e6c07b">Console</span>.WriteLine(<span style="color:#98c379">"
"</span>);<span style="color:#e6c07b">IEnumerable</span><span style="color:#f92672"><</span><span style="color:#d19a66">string</span><span style="color:#f92672">></span> <span style="color:#d19a66">whereList</span> <span style="color:#f92672">=</span> <span style="color:#d19a66">mList</span>.Where(<span style="color:#e6c07b">ListFind</span>);<span style="color:#61aeee">foreach</span> (<span style="color:#f92672">var</span> <span style="color:#d19a66">item</span> <span style="color:#f92672">in</span> <span style="color:#d19a66">whereList</span>){<span style="color:#e6c07b">Console</span>.WriteLine(<span style="color:#d19a66">item</span>);}<span style="color:#e6c07b">Console</span>.WriteLine(<span style="color:#98c379">"
"</span>);<span style="color:#d19a66">mList</span>.RemoveAll(<span style="color:#d19a66">name</span> <span style="color:#f92672">=</span><span style="color:#f92672">></span> {<span style="color:#f92672">if</span> (<span style="color:#d19a66">name</span>.Length <span style="color:#f92672"><=</span> <span style="color:#d19a66">6</span>){<span style="color:#f92672">return</span> <span style="color:#56b6c2">true</span>;}<span style="color:#f92672">else</span> {<span style="color:#f92672">return</span> <span style="color:#56b6c2">false</span>;}});<span style="color:#61aeee">foreach</span> (<span style="color:#f92672">var</span> <span style="color:#d19a66">item</span> <span style="color:#f92672">in</span> <span style="color:#d19a66">mList</span>){<span style="color:#e6c07b">Console</span>.WriteLine(<span style="color:#d19a66">item</span>);}<span style="color:#e6c07b">Console</span>.WriteLine(<span style="color:#98c379">"
"</span>);<span style="color:#e6c07b">Console</span>.ReadLine();}<span style="color:#b18eb1"><em>//ListFind函数</em></span><span style="color:#d19a66">public</span> <span style="color:#f92672">static</span> <span style="color:#d19a66">bool</span> <span style="color:#e6c07b">ListFind</span>(<span style="color:#d19a66">string</span> <span style="color:#d19a66">name</span>){<span style="color:#f92672">if</span> (<span style="color:#d19a66">name</span>.Length <span style="color:#f92672">></span> <span style="color:#d19a66">3</span>){<span style="color:#f92672">return</span> <span style="color:#56b6c2">true</span>;}<span style="color:#f92672">return</span> <span style="color:#56b6c2">false</span>;}}
}</span></span>

有好的建议,请在下方输入你的评论。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/512.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

arcgis拓扑检查

不能有悬挂点 不能有伪结点***路网处理很重要&#xff0c;看研究吧。 一直默认到最后。 导入要素类&#xff0c;单个 toupu2右键新建拓扑&#xff08;T&#xff09; 一般选不能有悬挂点&#xff0c;不能重叠。 一路默认 是 拉进图层可视化 线要素的话记得添加字段length&#…

OSPF和VLAN综合实验

目录 题目 1.IP地址的规划设计 2.搭建拓扑并进行基础IP配置 3.配置虚拟局域网 1&#xff09;按子网划分要求配置PC1和PC2 检测&#xff1a;输入[SW1]display vlan进行检查 配置路由器R3 检测&#xff1a;用PC1去访问PC2 2&#xff09;配置拓扑中其余路由器的网关以及回…

使用RabbitMQ

使用RabbitMQ 1 Docker安装RabbitMQ 1.1 安装RabbitMQ # 下载含有管理页面的镜像 docker pull rabbitmq:3.8.8-management# 创建容器 # 5672&#xff1a;应用访问端口&#xff1b;15672&#xff1a;控制台Web端口号&#xff1b; docker run -itd \ --namemy-rabbitmq \ --re…

OpenCV 优化和改进图像处理应用功能的方法与实践

OpenCV 优化和改进图像处理应用功能的方法与实践 导语一、性能优化二、算法改进三、用户体验改进四、应用实践示例&#xff1a;实时图像滤波总结 导语 图像处理应用是计算机视觉和图像处理领域的关键应用之一&#xff0c;通过对图像进行处理和分析&#xff0c;可以提取有用的信…

创建一门简单的解释性编程语言并实现它的解释器

背景 最近刷到大佬的教程&#xff0c;跟着学一下 效果 开始时 输入姓名和年龄后 代码 自创编程语言SimpleScript: 自创一门简易脚本支持中文编程 (gitee.com) 解析 1.词法分析 将程序的每个字符串精准划分出来&#xff0c;形成多个单词Token 2.语法分析 将各段Token再…

Android 查看ANR和Crash日志(adb bugreport)

今天测试那儿出了个ANR&#xff0c;我自己手机没问题&#xff0c;很烦&#xff0c;定位不了位置。 于是还是得用ADB连接来看一下&#xff0c;之前用&#xff0c;但是老是会忘记&#xff0c;今天总结一下。 ADB命令查看应用包名_adb查看包名命令_&岁月不待人&的博客-C…

TeeChart for.NET Crack

TeeChart for.NET Crack TeeChart for.NET为各种图表需求提供了图表控件&#xff0c;包括金融、科学和统计等重要的垂直领域。它可以处理您的数据&#xff0c;在各种平台上无缝创建信息丰富、引人入胜的图表&#xff0c;包括Windows窗体、WPF、带有HTML5/Javascript渲染的ASP.N…

【C++】string类模拟

文章目录 成员变量和查看接口迭代器&#xff08;读和读写&#xff09;operator[]&#xff08;读和读写&#xff09;c_str()size() 构造函数用字符串构造用对象构造&#xff08;两种方法&#xff09;析构 赋值运算符重载扩容和调整reserve()resize()clear() 增删查改push_back()…

产业大模型刚开卷,京东跑进“最后半公里”

点击关注 文&#xff5c;姚 悦 编&#xff5c;王一粟 “京东一直在探索哪些产品、技术、场景可以真正把大模型用起来&#xff0c;在我们内部的场景中反复验证后&#xff0c;才决定在7月份对外发布&#xff0c;现在我们在零售、健康、物流、金融等业务场景里已经积累了一些经…

记一次阿里云被挖矿处理记录

摘要 莫名其妙的服务器就被攻击了&#xff0c;又被薅了羊毛&#xff0c;当做免费的挖矿劳动力了。 一、起因 上班&#xff08;摸鱼&#xff09;好好的&#xff0c;突然收到一条阿里云的推送短信&#xff0c;不看不知道&#xff0c;两台服务器被拉去作为苦力&#xff0c;挖矿去…

迭代读取文件

使用 torch.utils.data.dataset.Dataset 收集数据信息&#xff0c;创建数据集。 使用 import torch.utils.data.dataloader 创建一个可以批量迭代的数据载入器&#xff0c;并通过 for 循环批量读取所有文件的数据。 import torch.utils.data.dataset as dataset import torch…

光伏并网逆变器低电压穿越MATLAB仿真模型

使用MATLAB 2017b搭建 光伏逆变器低电压穿越仿真模型&#xff0c;boost加NPC拓扑结构&#xff0c;基于MATLAB/Simulink建模仿真。具备中点平衡SVPWM控制&#xff0c;正负序分离控制&#xff0c;pll&#xff0c;可进行低电压穿越仿真。 控制结构完整&#xff0c;波形完美&…

java学习路程之篇二、知识点、配置JAVA_HOME、跨平台、JVM、JRE、JDK

文章目录 1、Java背景介绍2、Java跨平台性3、JDK的下载和安装4、第一个Java程序5、HelloWorld案例详解6、JVM、JRE和JDK7、配置JAVA_HOME 1、Java背景介绍 2、Java跨平台性 3、JDK的下载和安装 4、第一个Java程序 5、HelloWorld案例详解 6、JVM、JRE和JDK 7、配置JAVA_HOME

MySQL(2)

建表 mysql> create table work(-> ‘部门号’ int(11) not null,-> ‘职工号’ int(11) not null,-> ‘工作时间’ date not null,-> ‘工资’ float(8,2) not null,-> ‘政治面貌’ varchar(10) not null default 群众,-> ‘姓名’ varchar(20) not nu…

ELK 企业级日志分析系统

目录 一&#xff1a;ELK 介绍 1、ELK 简介 2、filebeat 结合 logstash 好处 3、为什么要使用 ELK 4、完整日志系统基本特征 5、ELK 的工作原理 二&#xff1a;ELK Elasticsearch 集群部署 1、环境准备 2、部署 Elasticsearch 软件 &#xff08;1&#xff09;安装elasti…

在线考试系统

在线考试系统 简介 该系统由C#开发语言开发&#xff0c;数据库是sql server2016&#xff0c;前端用到的前端技术有Bootstrap&#xff0c;js&#xff0c;css等前端技术&#xff0c;同时用到的.Net Core MVC的技术框架。另外本系统也支持mysql&#xff0c;暂未调试。 该系统是…

计算机存储设备

缓存为啥比内存快 内存使用 DRAM 来存储数据的、也就是动态随机存储器。内部使用 MOS 和一个电容来存储。 需要不停地给它刷新、保持它的状态、要是不刷新、数据就丢掉了、所以叫动态 、DRAM 缓存使用 SRAM 来存储数据、使用多个晶体管(比如6个)就是为了存储1比特 内存编码…

Element-UI el-table属性row-class-name用法

文章目录 前言官方示例自定义条件样式设置背景颜色样式stripe属性 设置背景颜色样式设置字体颜色总结 前言 可以通过指定 Table 组件的 row-class-name 属性来为 Table 中的某一行添加 class&#xff0c;表明该行处于某种状态。 官方示例 代码如下&#xff1a; <el-table…

直播美颜SDK与智能美妆:技术融合的未来

对于许多直播主和观众来说&#xff0c;如何在直播中呈现最佳的外貌成为了一个重要问题。为了解决这个问题&#xff0c;直播美颜SDK与智能美妆技术的融合应运而生&#xff0c;为用户带来了前所未有的美妆体验。 简单来讲&#xff0c;直播美颜SDK可以理解为计算机视觉技术和人工…

重磅预告丨Fortinet Demo Day系列实战攻防演练来袭!

随着网络安全形势的日趋严峻&#xff0c;越来越多的企业遭受了勒索、欺诈等危害。在高昂的赎金、生产损失&#xff0c;以及名誉损害的恐惧中&#xff0c;企业已经谈“黑”色变。黑客是如何悄无声息的“越过”重重高墙、道道壁垒进入到生产环境、办公空间&#xff0c;并在内网疯…