目录
35.MemberwiseClone()
36.Remove(T)
37.RemoveAll(Predicate)
38.RemoveAt(Int32)
39.RemoveRange(Int32, Int32)
40.Reverse()
41.Reverse(Int32, Int32)
C# List 详解一
1.Add(T),2.AddRange(IEnumerable),3.AsReadOnly(),4.BinarySearch(T),
C# List 详解二
5.Clear(),6.Contains(T),7.ConvertAll(Converter),8.CopyTo(Int32, T[], Int32, Int32),9.CopyTo(T[]),10.CopyTo(T[], Int32)
C# List 详解三
11.Equals(Object),12.Exists(Predicate),13.Find(Predicate),14.FindAll(Predicate),15.FindIndex(Int32, Int32, Predicate),16.FindIndex(Int32, Predicate),17.FindIndex(Predicate)
C# List 详解四
18.FindLast(Predicate),19.FindLastIndex(Int32, Int32, Predicate),20.FindLastIndex(Int32, Predicate),21.FindLastIndex(Predicate),22.ForEach(Action),23.GetEnumerator(),24.GetHashCode(),25.GetRange(Int32, Int32)
C# List 详解五
26.GetType(),27.IndexOf(T),28.IndexOf(T, Int32),29.IndexOf(T, Int32, Int32),30.Insert(Int32, T),31.InsertRange(Int32, IEnumerable),32.LastIndexOf(T),33.LastIndexOf(T, Int32),34.LastIndexOf(T, Int32, Int32)
C# List 详解六
35.MemberwiseClone(),36.Remove(T),37.RemoveAll(Predicate),38.RemoveAt(Int32),39.RemoveRange(Int32, Int32),40.Reverse(),41.Reverse(Int32, Int32)
C# List 详解七
42.Sort(),43.ToArray(),44.ToString(),45.TrimExcess(),46.TrueForAll(Predicate)
C# List 详解一_熊思宇的博客-CSDN博客
C# List 详解二_熊思宇的博客-CSDN博客
C# List 详解三_熊思宇的博客-CSDN博客
C# List 详解四_熊思宇的博客-CSDN博客
C# List 详解五_熊思宇的博客-CSDN博客
C# List 详解七_熊思宇的博客-CSDN博客
35.MemberwiseClone()
创建当前 Object 的浅表副本。(继承自 Object)
protected object MemberwiseClone ();
返回
Object
当前 Object 的浅表副本。
案例:
using System;
using System.Collections.Generic;
namespace ListTest
{
internal class Program
{
static void Main(string[] args)
{
Person person = new Person();
person.Name = "张三";
person.Age = 100;
Person person1 = person.ShallowCopy();
Console.WriteLine("Name:{0}", person1.Name);
Console.WriteLine("Age:{0}", person1.Age);
Console.ReadKey();
}
}
class Person
{
public string Name { get; set; }
public int Age { get; set; }
public Person ShallowCopy()
{
return (Person)this.MemberwiseClone();
}
}
}
运行:
36.Remove(T)
从 List<T> 中移除特定对象的第一个匹配项。
public bool Remove (T item);
参数
item
T
要从 List<T> 中删除的对象。 对于引用类型,该值可以为 null。
返回
Boolean
如果成功移除了 item,则为 true;否则为 false。 如果在 false 中没有找到 item,则此方法也会返回 List<T>。
案例:
using System;
using System.Collections.Generic;
namespace ListTest
{
internal class Program
{
static void Main(string[] args)
{
List<int> list = new List<int>() { 1, 3, 5, 5, 6 };
bool result = list.Remove(6);
Console.WriteLine("移除结果:{0}", result);
Console.WriteLine(string.Join("-", list));
Console.ReadKey();
}
}
}
运行:
37.RemoveAll(Predicate<T>)
移除与指定的谓词所定义的条件相匹配的所有元素。
public int RemoveAll (Predicate<T> match);
参数
match
Predicate<T>
Predicate<T> 委托,用于定义要移除的元素应满足的条件。
返回
Int32
从 List<T> 中移除的元素数。
案例:
using System;
using System.Collections.Generic;
namespace ListTest
{
internal class Program
{
static void Main(string[] args)
{
List<int> list = new List<int>() { 1, 3, 5, 5, 6 };
int result = list.RemoveAll(x => x > 3);
Console.WriteLine("移除个数:{0}", result);
Console.WriteLine(string.Join("-", list));
Console.ReadKey();
}
}
}
运行:
38.RemoveAt(Int32)
移除 List<T> 的指定索引处的元素。
public void RemoveAt (int index);
参数
index
Int32
要移除的元素的从零开始的索引。
案例:
using System;
using System.Collections.Generic;
namespace ListTest
{
internal class Program
{
static void Main(string[] args)
{
List<int> list = new List<int>() { 1, 3, 5, 5, 6 };
list.RemoveAt(1);
Console.WriteLine(string.Join("-", list));
Console.ReadKey();
}
}
}
运行:
39.RemoveRange(Int32, Int32)
从 List<T> 中移除一系列元素。
public void RemoveRange (int index, int count);
参数
index
Int32
要移除的元素范围的从零开始的起始索引。
count
Int32
要移除的元素数。
案例:
using System;
using System.Collections.Generic;
namespace ListTest
{
internal class Program
{
static void Main(string[] args)
{
List<int> list = new List<int>() { 1, 3, 5, 5, 6 };
list.RemoveRange(1, 2);
Console.WriteLine(string.Join("-", list));
Console.ReadKey();
}
}
}
运行:
40.Reverse()
将整个 List<T> 中元素的顺序反转。
public void Reverse ();
注解
此方法用于 Array.Reverse 反转元素的顺序。
此方法是一个 O (n) 操作,其中 nCount。
案例:
using System;
using System.Collections.Generic;
namespace ListTest
{
internal class Program
{
static void Main(string[] args)
{
List<int> list = new List<int>() { 1, 3, 5, 5, 6 };
list.Reverse();
Console.WriteLine(string.Join("-", list));
Console.ReadKey();
}
}
}
运行:
41.Reverse(Int32, Int32)
将指定范围中元素的顺序反转。
public void Reverse (int index, int count);
参数
index
Int32
要反转的范围的从零开始的起始索引。
count
Int32
要反转的范围内的元素数。
案例:
using System;
using System.Collections.Generic;
namespace ListTest
{
internal class Program
{
static void Main(string[] args)
{
List<int> list = new List<int>() { 1, 3, 5, 5, 6 };
list.Reverse(1,3);
Console.WriteLine(string.Join("-", list));
Console.ReadKey();
}
}
}
运行:
第 6 / 7 篇 End