类
十、类
(一)定义
String类:
.Length 字符的长度
.Trim() 去掉开头以及结尾的空格
.TrimStart() 去掉字符串开头的空格
.TrimEnd() 去掉字符串后面的空格
.ToUpper() 全部大写
.ToLower() 全部小写
Substring(起始位置,截取长度)
Substring(起始位置) 只写起始位置,可以截取到尾
身份证截取生日
IndexOf("字符串") 返回第一次出现此字符串的索引
LastIndexOf("字符串") 返回最后一次出现此字符串的索引
StartsWith("字符串") 是否以此字符串为开头,返回True或False
EndsWith("字符串") 是否以此字符串为结尾
Contains("字符串") 是否包含此字符串。返回True或者False
Replace("老字","新字") 将老字用新字替换
Math类:
Ceiling() 取上线
Floor() 取下线
Math.PI 圆周率
Math.Sqrt() 平方根
Math.Round() 四舍五入(注意奇数偶数下.5不一样的结果)
DateTime类:
注意在使用之前需要先初始化一遍。
DateTime dt =new DateTime();
若获取当前时间,可以不用初始化:
DateTime dt =DateTime.Now;//系统当前时间,运行时查询
获取年 dt.Year
获取月 dt.Month
获取日 dt.Day
获取小时 dt.Hour
获取分 dt.Minute
获取秒 dt.Second
获取这一天是星期几
DayOfWeek d = dt.DayOfWeek;
获取到的是英文。
若想用中文,先d.ToString()
然后根据英文打印出中文。
yyyy 年
MM 月
dd 日
hh 时
mm 分
ss 秒
以上是代位符。可以在字符串中先占用下这个空位。
string s = dt.ToString("yyyy年MM月dd日hh时mm分ss秒");
DateTime可以增加或者减去相应的时间
Add() 增加或者减去一定的时间间隔
AddYears() 增加或减去年份
AddMonths() 增加或减去月份
AddDays() 增加或减去天数
以此类推。
注意,加减天数,小时数是利用double类型。其他都是int类型
(二)例题
1、判断邮箱格式是否正确
1).有且只能有一个@
2).不能以@开头
3).@之后至少有一个.
4).@和.不能靠在一起
5).不能以.结尾
主要代码:
Console.Write("请输入邮箱地址:"); string email = Console.ReadLine(); if (email.Contains("@")) { if (email.IndexOf("@") == email.LastIndexOf("@")) { if (email.StartsWith("@")) Console.WriteLine("输入格式不对!"); else { int a = email.IndexOf("@"); string b = email.Substring(a); if (b.Contains(".")) { if (Math.Abs(b.IndexOf("@") - b.IndexOf(".")) != 1) { if (email.EndsWith(".")) Console.WriteLine("输入格式不对!"); else Console.WriteLine("输入正确!"); } else Console.WriteLine("输入格式不对!"); } else Console.WriteLine("输入格式不对!"); } } else Console.WriteLine("输入格式不对!"); } else Console.WriteLine("输入格式不对!"); } Console.ReadLine();
结果:
2、获取当前时间,增加n天后打印出是星期几
主要代码:
DateTime dt = DateTime.Now; dt = dt.AddDays(3); DayOfWeek d = dt.DayOfWeek; Console.WriteLine(d); Console.ReadLine();
结果:
3、输入两个时间日期,计算出相差多少天(TotalDays)
主要代码:
1 Console.Write("请输入:"); 2 DateTime dt1 = new DateTime(); 3 dt1 = DateTime.Parse(Console.ReadLine()); 4 Console.Write("请输入:"); 5 DateTime dt2 = new DateTime(); 6 dt2 = DateTime.Parse(Console.ReadLine()); 7 TimeSpan ts = dt2 - dt1; 8 Console.WriteLine(ts.TotalDays.ToString()); 9 Console.ReadLine();
结果: