你的位置:首页 > ASP.net教程

[ASP.net教程]C# 类


String类:
.Length 字符的长度

.Trim() 去掉开头以及结尾的空格
.TrimStart() 去掉字符串开头的空格
.TrimEnd() 去掉字符串后面的空格

.ToUpper() 全部大写
.ToLower() 全部小写

Substring(起始位置,截取长度)
Substring(起始位置) 只写起始位置,可以截取到尾
身份证截取生日

IndexOf("字符串") 返回第一次出现此字符串的索引
LastIndexOf("字符串") 返回最后一次出现此字符串的索引

StartsWith("字符串") 是否以此字符串为开头,返回True或False
EndsWith("字符串") 是否以此字符串为结尾
Contains("字符串") 是否包含此字符串。返回True或者False

Replace("老字","新字") 将老字用新字替换

举例练习:
1.请输入您的身份证号,为您截取出来您的生日
370321199003053330
Console.Write("请输入您的身份证号:");
string cid = Console.ReadLine();
string year = cid.Substring(6,4);
string month = cid.Substring(10,2);
string day = cid.Substring(12,2);
Console.WriteLine("您的出生日期为:{0}年{1}月{2}日。",year,month,day);
Console.ReadLine();

 

2.判断邮箱格式是否正确
1.有且只能有一个@
2.不能以@开头
3.@之后至少有一个.
4.@和.不能靠在一起
5.不能以.结尾
Console.Write("请输入您的邮箱账号:");
string mail = Console.ReadLine();
if (mail.Contains("@"))
{
int a = mail.IndexOf("@");
int b = mail.LastIndexOf("@");
if (a == b)
{
if (!mail.StartsWith("@"))
{
string mail1 = mail.Substring(a);
if (mail1.Contains("."))
{
int c = mail1.IndexOf(".");
if (c != 1)
{
if (mail.Substring(a - 1, 1) != ".")
{
if (!mail.EndsWith("."))
{
Console.WriteLine("邮箱格式正确,您输入的邮箱账号是:"+mail);
}
else
{
Console.WriteLine("您的邮箱格式不正确!");
}
}
else
{
Console.WriteLine("您的邮箱格式不正确!");
}
}
else
{
Console.WriteLine("您的邮箱格式不正确!");
}
}
else
{
Console.WriteLine("您的邮箱格式不正确!");
}
}
else
{
Console.WriteLine("您的邮箱格式不正确!");
}
}
else
{
Console.WriteLine("您的邮箱格式不正确!");
}
}
else
{
Console.WriteLine("您的邮箱格式不正确!");
}


Console.ReadLine();

Math类    数学类

 

Ceiling() 取上线
Floor() 取下线
Math.PI 圆周率
Math.Sqrt() 平方根
Math.Round() 四舍五入(注意奇数偶数下.5不一样的结果) 奇数.5的时候取得是上线    偶数.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类型

举例练习:

 


获取星期几
DayOfWeek d = dt.DayOfWeek;
//Console.WriteLine(d);
string dow =d.ToString();
switch(dow)
{
case "Monday":
Console.WriteLine("星期一");
break;
case "Tuesday":
Console.WriteLine("星期二");
break;
}

 

Add() 增加或减少
TimeSpan span = new TimeSpan(3, 3, 3, 3);
Console.WriteLine(dt.Add(span));

 

//增加多少天
Console.WriteLine( dt.AddDays(-7.5));

 


输入两个时间日期,计算出相差多少天(TotalDays)
Console.Write("请输入第一个时间日期(****/**/** **:**:**):");
DateTime dt1 = DateTime.Parse(Console.ReadLine());
Console.Write("请输入第二个时间日期(****/**/** **:**:**):");
DateTime dt2 = DateTime.Parse(Console.ReadLine());

 

Console.WriteLine((dt2-dt1).TotalDays);

 

高考倒计时
QQ情侣
Console.Write("请输入你们恋爱开始的时间日期:");
DateTime dt1 = DateTime.Parse(Console.ReadLine());
DateTime dt2 = DateTime.Now;
Console.WriteLine("已经恋爱了{0}天。",Math.Ceiling( (dt2-dt1).TotalDays));

 

Console.ReadLine();


异常保护 try    catch
try    保护可能出错的语句
{
Console.Write("请输入一个整数:");
int a = int.Parse(Console.ReadLine());
Console.WriteLine("输入无误!!");
}
catch  若try中的语句有问题,会直接抓住,到这个位置执行
{
Console.WriteLine("您的输入有误!");
}
finally    最后要做什么。写与不写一样
{
Console.WriteLine("感谢您的使用,再见!");
}
Console.ReadLine();

 

前面if else中输入日期判断格式,简单方法
try
{
Console.Write("请输入一个时间日期:");
DateTime dt = DateTime.Parse(Console.ReadLine());
Console.WriteLine("您输入的时间日期格式正确!");
}
catch
{
Console.WriteLine("您输入的时间日期有误!");
}
Console.WriteLine("感谢使用!");
Console.ReadLine();

随机数类     Random

 

初始化
Random ran = new Random();
一到一百以内随机一个数:int a = ran.Next(101);
一到三十七内随机一个数int b = ran.Next(1,37);