资源描述:
《基础类及常用算法》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第5章基础类及常用算法唐大仕dstang2000@263.nethttp://www.dstang.com本章内容1DotNet基本类库2类型转换3数学、文字、日期4数组、集合、泛型5常用算法6程序的调试5.1DotNet基本类库统一的编程API:NETFramework类库SystemSystem.DataSystem.XmlSystem.WebGlobalizationDiagnosticsConfigurationCollectionsResourcesReflectionNetIOThreadingTextServiceProcessSecurityCommonOleDbSQLTy
2、pesSqlClientXPathXSLTRuntimeInteropServicesRemotingSerializationSerializationConfigurationSessionStateCachingSecurityServicesDescriptionDiscoveryProtocolsUIHtmlControlsWebControlsSystem.DrawingImagingDrawing2DTextPrintingSystem.Windows.FormsDesignComponentModel统一的编程API:NETFramework类库5.2基本类型及类型转换任何
3、事物都是对象任何事物都是object类的子类一个函数如果需要object参数,则可以代入任意参数任何对象都有以下方法ToString()Equals()GetType()MemberwiseClone()等常量也是对象3.ToString()“Hello”.Length表达式中的类型转换当有不同种类的混合运算时:intlongfloatdouble(所有的byte,short,char等转为int)强制类型转换在表达式前面用(类型)来表示doubled=3.14;inta=(int)d;floatb=(float)(d+1.5);注意圆括号类型转换函数System.Convert类有
4、以下static方法ToDouble(…)ToInt32(…)ToDateTime(…)基本类型关键字含有等价的类int即System.Int32含有一些特殊的属性或方法int.MaxValuedouble.NaNDouble.PositiveInfinityDouble.IsNaN(…)数与字符串的转换int.Parse(string)double.ToString();ToString("#0.00")5.3几个常用类Math类提供了相关的数学方法Abs()Sin()Cos()Tan()Round()Exp()Log()Pow()乘方Random类.Next(100)0到100之间(不
5、含100).NextDouble()0到1之间Random得到的是伪随机数如果要用更强的随机数,可以使用System.Security.Cryptography.RNGCryptoServiceProviderDateTime及TimeSpanDateTime是值类型newDateTime(y,m,d,h,m,s).Now.ToString("yyyy-MM-ddHH:mm:ss“).AddMinutes(5).Year,.Month,.Day,.DateTimeSpan两个日期相减,可以得到一个TimeSpanString类==+[].Length.IndexOf.LastIndexOf
6、.StartsWith,.EndsWith.Substring(idx,len)注意第二个参数.Trim,.TrimEnd,.PadLeft,.Insert,.Remove.Split(';'),string.JoinString及StringBuilderString内容不可变(immutable)StringBuilder内容可变.Append,.Remove,.Replace.Length,.ToString在循环体中用s+=….可能会带来效率问题5.4数组与集合数组声明int[]a;int[,]b;分配空间a=newint[5];b=newint[4,5];集合类ArrayList
7、相当于动态数组,实现IListHashtable相当于键/值的集合,实现IDictionary用[]进行访问,表示获取、增加、删除、修改提示:用于查询时,比线性搜索的效率要高,可用于程序的优化SortedListStackQueue使用foreach访问数组及集合foreach(类型变量inxxxx)其中xxxx必须是实现了实现IEnumerable接口或含有GetEnumerator方法的类型IEnumeratorGe