posts - 77, comments - 54, trackbacks - 0, articles - 0
  IT博客 :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理

Hashtable类本身实现了IDictionary、ICollection、IEnumerable、ISerializable、deserializationCallback以久ICloneable接口,允许你应用键/值对关系返回集合中的特定对象。
以下是一个简单例子:
 1using System;
 2using System.Collections;
 3
 4namespace UsingHashTables
 5{
 6    /// <summary>
 7    /// Class1 的摘要说明。
 8    /// </summary>

 9    class Class1
10    {
11        /// <summary>
12        /// 应用程序的主入口点。
13        /// </summary>

14        [STAThread]
15        static void Main(string[] args)
16        {
17            Hashtable myHashtable = new Hashtable();
18            for (int i=0; i < 10; i++)
19            {
20                string objectKey = "Key" + (i*10);
21                string objectValue = "Value" + (i*10);
22                myHashtable.Add(objectKey, objectValue);
23            }

24            Console.WriteLine("以下列出myHashtable集合对象的所有key值:");
25            ICollection myKeys = myHashtable.Keys;
26            foreach(string keyString in myKeys)
27            {
28                Console.Write(keyString + "\t");
29            }

30            Console.WriteLine();
31            Console.WriteLine("以下列出myHashtable集合对象的所有Value值:");
32            ICollection myValues = myHashtable.Values;
33            foreach(string valueString in myValues)
34            {
35                Console.Write(valueString + "\t");
36            }

37            Console.WriteLine();
38            do
39            {
40                Console.Write("输入key值:");
41                string keyValue = Console.ReadLine();
42                if (keyValue == "b"break;
43                Console.WriteLine("Key:{0}, Value:{1}\n", keyValue, myHashtable[keyValue]);
44            }
while(true);
45
46        }

47    }

48}

49

posted @ 2006-06-01 11:16 东人EP 阅读(304) | 评论 (0)编辑 收藏

范例 Events:
说明 示范实现事件处理程序,模拟汽车速度限制的控制程序,当输入的车速大于60,则触发控制事件,警告车速过快,并且要求降低车速。
 1using System;
 2
 3namespace Events
 4{
 5    /// <summary>
 6    /// Class1 的摘要说明。
 7    /// </summary>

 8    class Events
 9    {
10        /// <summary>
11        /// 应用程序的主入口点。
12        /// </summary>

13        [STAThread]
14        static void Main(string[] args)
15        {
16            long speed;
17            CheckSpeed myCheckSpeed = new CheckSpeed();
18            DoSomeThing myDoSomeThing = new DoSomeThing();
19            Console.Write("目前行车速度:");
20            speed = long.Parse(Console.ReadLine());
21            Console.WriteLine("");
22            myCheckSpeed.myEvent += new SpeedCheckHandler(myDoSomeThing.SlowDown);
23            myCheckSpeed.CheckSpeedLimit(speed);
24            Console.ReadLine();
25        }

26    }

27
28    public class SpeedCheckEventArgs : EventArgs
29    {
30        private long speed;
31        public SpeedCheckEventArgs(long speed)
32        {
33            this.speed = speed;
34        }

35        public long getSpeed
36        {
37            get
38            {
39                return speed;
40            }

41        }

42        public string WarningMessage
43        {
44            get
45            {
46                return "警告:行车超过速度界限!!";
47            }

48        }

49    }

50
51    public delegate void SpeedCheckHandler(object sender, SpeedCheckEventArgs e);
52
53    public class CheckSpeed
54    {
55        public event SpeedCheckHandler myEvent;
56        public void CheckSpeedLimit(long speed)
57        {
58            if (speed > 60)
59            {
60                SpeedCheckEventArgs speedsArgs = new SpeedCheckEventArgs(speed);
61                myEvent(this, speedsArgs);
62            }

63            else
64            {
65                Console.WriteLine("您目前的速度正常");
66            }

67        }

68    }

69
70    public class DoSomeThing
71    {
72        public void SlowDown(object sender, SpeedCheckEventArgs e)
73        {
74            Console.WriteLine(e.WarningMessage);
75            Console.WriteLine("您目前车速{0}已超速,请踩下刹车,降低速度,避免危险!!", e.getSpeed);
76            Console.WriteLine("正常行车速度请降至60KM/H以下!!");
77        }

78    }

79}

80

posted @ 2006-05-31 14:19 东人EP 阅读(156) | 评论 (0)编辑 收藏

今天小编在市场上发现T60逐渐多起来,老核心的笔记本电脑开始大规模降价甩货。据ThinkPad笔记本电脑经销商讲,由于联想新核心的ThinkPad起价比原来略低,Sonoma平台的笔记本电脑来自官方和渠道的价格调整幅度不大,使这些机型不太好卖。降价甩货也是无奈之举。

    具有英特尔奔腾M 760处理器的R52笔记本电脑最低已经降至11699元,商家承诺即日起购买以下两款R52笔记本可获赠256MB 纽曼M870 MP3一个。另外ThinkPad入门机R51e 2XC仅售6499元,并送纽曼M520 256MB MP3一个。

ThinkPad R52 1858MC1(资料文章价格评论)    参考售价:11699元

    ThinkPad R52 1858MC1 (详细资料 相关文章 价格 评论)采用英特尔奔腾M 760处理器,主频2.00GHz,533MHz前端总线。256MB DDRII内存,60GB硬盘,14.1英寸液晶显示屏,集成英特尔GMA900显示芯片,DVD光驱,内置56K调制解调器、802.11b/g无线网卡,集成1000M以太网卡。



产品正视图

IBM ThinkPad R52

    接口方面:2个USB 2.0接口,红外接口,1个并口,6芯锂电池,使用时间约为3.8小时。预装Windows XP 中文家庭版,一年有限质保。参考售价:11699元。

ThinkPad R52 1858NC1    参考售价:12499元

    ThinkPad R52 1858NC1采用英特尔奔腾M 760处理器,主频2.00GHz,533MHz前端总线。512MB DDRII内存,80GB硬盘,14.1英寸液晶显示屏,集成英特尔GMA900显示芯片,康宝刻录光驱,内置56K调制解调器、802.11b/g无线网卡,集成1000M以太网卡。

    接口方面:2个USB2.0接口,红外接口,IEEE1394接口,1个并口,6芯锂电池,使用时间约为3.8小时。预装Windows XP 中文家庭版,一年有限质保。参考售价:12499元。

ThinkPad R51e 18432XC    参考售价:6499元

    ThinkPad R51e 18432XC (详细资料 相关文章 商家 评论)采用英特尔赛扬M 370处理器,主频1.5GHz,1MB二级缓存,前端总线400MHz。ATI RADEON XPRESS 200M芯片组,集成性能相当于X300显示芯片,14.1英寸XGA液晶显示屏,256MB DDR2 533MHz内存,40GB硬盘DVD光驱,内置调制解调器,集成100M以太网卡

钢铰链和Access IBM功能键
IBM ThinkPad R51e

    接口方面:2个USB2.O接口,1个VGA接口,1个并口,1个PC卡插槽,标配6芯锂离子电池,全重约2.72公斤。预装Windows XP 家庭版,提供一年保修。参考售价:6499元。

posted @ 2006-05-31 12:27 东人EP 阅读(152) | 评论 (0)编辑 收藏

事件和委托联合实例:
 1using System;
 2
 3namespace EventHandler
 4{
 5    delegate void DlgDoCalcDelegate();
 6    /// <summary>
 7    /// Class1 的摘要说明。
 8    /// </summary>

 9    class EventsHandler
10    {
11        private void DoAdd()
12        {
13            AddMethod();
14        }

15
16        private void AddMethod()
17        {
18            long lngFirstValue;
19            long lngSecondValue;
20            long lngSum;
21            Console.WriteLine("请输入第一个进行运算的数值:");
22            lngFirstValue = long.Parse(Console.ReadLine());
23            Console.WriteLine("请输入第二个进行运算的数值:");
24            lngSecondValue = long.Parse(Console.ReadLine());
25            lngSum = lngFirstValue + lngSecondValue;
26            Console.WriteLine("{0}与{1}的相加等于{2}", lngFirstValue, lngSecondValue, lngSum);
27        }

28
29        /// <summary>
30        /// 应用程序的主入口点。
31        /// </summary>

32        [STAThread]
33        static void Main(string[] args)
34        {
35            EventsHandler myEventHandler = new EventsHandler();
36            calc mycalc = new calc();
37            mycalc.evtDoCalc += new DlgDoCalcDelegate(myEventHandler.DoAdd);
38            Console.WriteLine("触发加法运算事件------");
39            mycalc.DoCalc();
40            Console.Read();
41        }

42
43    }

44
45    class calc
46    {
47        public event DlgDoCalcDelegate evtDoCalc;
48        public void DoCalc()
49        {
50            evtDoCalc();
51        }

52    }

53}

54

posted @ 2006-05-31 12:23 东人EP 阅读(154) | 评论 (0)编辑 收藏

应用程序利用所定义的方法执行某种操作,完成特定的工作,而委派本身则是一种能够引用特定方法的对象,因此,可以通过委派对象,执行所引用的方法。
以下是委派的简单例子:

 1 using  System;
 2
 3 namespace  UsingDelegates
 4 {
 5   ///   <summary>
 6   ///  Class1 的摘要说明。
 7   ///   </summary>

 8   class  UsingDelegates
 9   {
10    ///   <summary>
11    ///  应用程序的主入口点。
12    ///   </summary>

13   [STAThread]
14    static   void  Main( string [] args)
15    {
16     long  length1  =   10 ;
17     long  length2  =   15 ;
18    myDelegate myDelegate1  =   new  myDelegate(Measure.Square);
19    myDelegate myDelegate2  =   new  myDelegate(Measure.Circle);
20    Console.WriteLine( " 边长为{0}的正方形面积为:{1} " , length1, myDelegate1(length1).ToString());
21    Console.WriteLine( " 半径为{0}的圆形面积为:{1} " , length2, myDelegate2(length2).ToString());
22    Console.ReadLine();
23   }

24
25  }

26   //  定义一个委派
27   public   delegate   double  myDelegate( long  length);
28  
29   public   class  Measure
30   {
31    public   static   double  Square( long  length)
32    {
33     double  area;
34    area  =  Math.Pow(length,  2 );
35     return  area;
36   }

37   
38    public   static   double  Circle( long  length)
39    {
40     double  area;
41    area  =  ( 4 / 3 ) * Math.PI * Math.Pow(length,  3 );
42     return  area;
43   }

44  }

45 }

46
47

posted @ 2006-05-31 11:36 东人EP 阅读(146) | 评论 (0)编辑 收藏

我现在最喜欢的NB就是ThinkPad T43了,不过这款的价格真是让人畏却呀,要在15000以上才能考虑呀!没钱。可怜。

posted @ 2006-05-31 10:37 东人EP 阅读(112) | 评论 (0)编辑 收藏

MapInfo出支持FrameWork 2.0的产品了!MapXtreme2005的V6.6版本现在只是Beta1。

posted @ 2006-05-31 08:50 东人EP 阅读(412) | 评论 (2)编辑 收藏

仅列出标题
共8页: 1 2 3 4 5 6 7 8