我有一个ArrayList 名叫 listABC
并定义了一个Struct 名叫 StructABC
将一些StructABC类型的数据插入到了listABC中现在我要查找listABC中是否有某一元素 abc(StructABC类型的)那么可以用listABC.Contains(abc)语句吗?
Contains()针对的是引用还是值?如果不用Contains 那用什么?循环遍历?
并定义了一个Struct 名叫 StructABC
将一些StructABC类型的数据插入到了listABC中现在我要查找listABC中是否有某一元素 abc(StructABC类型的)那么可以用listABC.Contains(abc)语句吗?
Contains()针对的是引用还是值?如果不用Contains 那用什么?循环遍历?
object o2 = 2;
arrlist.Add(1);
arrlist.Add("a");
arrlist.Add(o1);
Console.WriteLine(arrlist.Contains(1)); //true
Console.WriteLine(arrlist.Contains("a")); //true
Console.WriteLine(arrlist.Contains(o2)); //true
{
public Int32 i;
} class C
{
public String s;
}
static void Main(string[] args)
{
ArrayList arrlist = new ArrayList(); A a1, a2;
a1.i = 1;
a2.i = 1; C c1 = new C();
C c2 = new C();
c1.s = "a";
c2.s = "a"; arrlist.Add(a1);
arrlist.Add(c1);
Console.WriteLine(arrlist.Contains(a2)); //true
Console.WriteLine(arrlist.Contains(c1)); //true
Console.WriteLine(arrlist.Contains(c2)); //false
}
{
public C c;
} class C
{
object o = new object();
} ArrayList arr = new ArrayList(); A a;
a.c = new C(); arr.Add(a); A a1;
a1.c = new C(); Console.WriteLine(arr.Contains(a1)); //false
using System.Collections.Generic;
using System.Text;
using System.Collections;
namespace arraylist
{
class Program
{
static void Main(string[] args)
{
ArrayList arrlist = new ArrayList();
arrlist.Add("苹果");//增加
arrlist.Add("香焦");
arrlist.Add("葡萄");
foreach (int n in new int[3] { 0, 1, 2 })
{
arrlist.Add(n);
}
arrlist.Remove(0);//移除值为0的数
arrlist.RemoveAt(3);//移除索引为3的数
arrlist.Insert(1, "apple");//在指定索引处插入数
for (int i = 0; i < arrlist.Count; i++)
{
Console.WriteLine(arrlist);
}
Console.Read();
}
}
}
using System;
using System.Collections.Generic;
using System.Text;
using System.Collections;
namespace HashtableTest
{
class Program
{
static void Main(string[] args)
{
Hashtable student = new Hashtable();
student.Add("001","Tom");//增加 student.Add("002", "Lily");
student.Add("003", "Jime");
student.Add("004", "Lucy");
foreach (DictionaryEntry element in student)
{
string di =element.Key .ToString ();
string name = element .Value .ToString ();
Console.WriteLine("学生的ID:{0} 学生的姓名 {1}",di,name );
}
student.Remove("003");
Console.WriteLine("删后遍历队:");
foreach (DictionaryEntry element in student)
{
string di = element.Key.ToString();
string name = element.Value.ToString();
Console.WriteLine("学生的ID:{0} 学生的姓名 {1}", di, name);
}
Console.Read();
}
}
}
using System;
using System.Collections.Generic;
using System.Text;
using System.Collections;
namespace queueTest
{
class Program
{
static void Main(string[] args)
{
Queue queue = new Queue();
for (int i = 0; i < 6; i++)
{
queue.Enqueue(i);
Console.WriteLine("{0}入队列", i);
}
Console.WriteLine("返回队开始的元素{0}", queue.Peek().ToString());
Console.WriteLine("遍历队:");
foreach (int n in queue)
{
Console.WriteLine(n );
}
while (queue.Count != 0)
{
int q = (int)queue.Dequeue();
Console.WriteLine("{0}出队", q);
}
Console.Read();
}
}
}
using System;
using System.Collections.Generic;
using System.Text;
using System.Collections;
namespace SortedListTest
{
class Program
{
static void Main(string[] args)
{
SortedList student = new SortedList();
student.Add("001","Lucy");
student.Add("002", "Lily");
student.Add("003", "Tom");
student.Add("004", "Jim");
foreach (DictionaryEntry n in student)
{
string id = n.Key.ToString();
string name = n.Value.ToString();
Console.WriteLine("学生的ID:{0} ,学生的姓名: {1}",id ,name );
}
student.Remove("003");
Console.WriteLine("删后的栈");
foreach (DictionaryEntry n in student)
{
string id = n.Key.ToString();
string name = n.Value.ToString();
Console.WriteLine("学生的ID:{0} ,学生的姓名: {1}", id, name);
}
Console.Read();
}
}
}using System;
using System.Collections.Generic;
using System.Text;
using System.Collections;
namespace stacktest
{
class Program
{
static void Main(string[] args)
{
Stack stack = new Stack();
for (int i=0; i < 6; i++)
{
stack.Push(i);
}
Console.WriteLine("当前栈顶元素为:{0}",stack .Peek ().ToString());
Console.WriteLine("移出栈顶元素:{0}",stack .Pop ().ToString() );
Console.WriteLine("当前栈顶元素为:{0}", stack.Peek().ToString());
Console.WriteLine("遍历栈");
foreach (int i in stack)
{
Console.WriteLine(i);
}
while (stack.Count != 0)
{
int s = (int)stack.Pop();
Console.WriteLine("{0}出栈", s);
}
Console.Read ();
}
}
}