4.24学习笔记

C#中
数组长度表示用.length;
arraylist集合中对象个数表示用.count;

 

c#数组的声明方式

int[] intArray;
int[] intArray = {99,34,56,12,1};
int[] intArray = new int[5];
int[] intArray = new int[varsize];
int[] intArray = new int[5]{99,34,56,12,1};

 

从旧数组复制到新数组,2表示新数组开始位置

oldArray.CopyTo(newArray, 2);

 循环迭代出Hashtable中对象
错误:

foreach(Person  p in peopleHashtable) // Will compile but not run!
{
    Response.Write(p.FullName + "<BR/>");
} 

 正确:

foreach (DictionaryEntry de in peopleHashtable)
{
    Response.Write(de.Key.ToString() + ":" + ((Person)de.Value).FullName + 
       "<BR/>");
}

 

 

SortedList

1创建空的SortedList
2手动迭代Hashtable的DictionaryEntry(Hashtable是无须存放的)
3把它们添加到SortedList(添加过程中自动排序)
实例:
SortedList peopleSortedList = new SortedList(peopleHashtable);
foreach (Person p in peopleSortedList.Values)
{
    Response.Write(p.FullName + "<BR/>");
}
Response.Write("Index of Srinivasa: " + peopleSortedList.IndexOfKey("ss"));

 

Queues适合于按照对象进入的顺序来存储它们(先进先出),

而Stack是一个先进后出结构。

但要取的话必须删一个取一个

 

BitArray
管理一个布尔值数组或者集合使用

 


强类型化的集合如PersonList类
注意:强制类型转换隐藏在了属性访问器中,属性的返回值是强类型化的。(这里this是C#属性访问器的关键字)

 

using System;
using System.Data;
using System.Configuration;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;

using System.Collections;

/// <summary>
///PersonList 的摘要说明
/// </summary>
public class PersonList:System.Collections.IEnumerable
{
 public PersonList()
 {
  //
  //TODO: 在此处添加构造函数逻辑
  //
 }
    private ArrayList innerList = new ArrayList();

    public void Add(Person aPerson)
    {
        innerList.Add(aPerson);
    }

    public void Remove(Person aPerson)
    {
        innerList.Remove(aPerson);
    }

    public int Count
    {
        get
        {
            return innerList.Count;
        }
    }

    //Get/Set element at given index
    public Person this[int index]
    {
        get 
        {
            return (Person)innerList[index];
        }
        set
        {
            innerList[index] = value;
        }
    }

    public IEnumerator GetEnumerator()
    {
        return innerList.GetEnumerator();
    }
}

 

 泛型的Hashtable 和Hashtable区别,读取的时候不需要强制类型转化

 

LinkedList<T>是一个强类型化的双链接表,该链接表中的每个节点都指向前一个节点和后一个节点

 

 问题:谁能帮我讲解下BinarySearch方法?小女谢谢了。。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值