C# 课堂总结4-类(常用的类)

一、string类 

1、

str.Length:字符串的长度 *****
str[索引号]

2、

str.Trim():去除左右两边的空格 *****
str.TrimStart():去掉左边的空格
str.TrimEnd():去掉右边的空格

  //eg.1  x.Trim();去掉字符串前后的空格,TrimStart()去掉前面的空格,TrimEnd()去掉后面的空格
        static void Main1(string[] args)
        {
            ////string x = Console.ReadLine();
            string x = "  I love C#!  ";
            int i = x.Length;//获取字符串长度,返回一个int类型的值
            x = x.Trim();//去除字符串中前后的空格 ,不包括中间的
            Console.WriteLine(i);
            Console.Write(x);
        }

3、

str.ToLower():大写转小写
str.ToUpper():小写转大写

4、

str.StartsWidth("字符串"):是否以括中的字符串开头,返回(bool类型值)。

str.EndsWidth("字符串"):是否以括号中的字符串结尾,返回(bool类型值)。

str.Contains("字符串"):是否包括括号中的字符串,返回(bool类型值)。

eg.1

 1  static void Main(string[] args)
 2         {
 3             string s = "abidfje";
 4             bool i = s.Contains("a");
 5             Console.WriteLine(i);//i="Ture"
 6 
 7             bool j = s.StartsWith("c");
 8             Console.WriteLine(j);//j="False"
 9 
10             bool k = s.EndsWith("e");
11             Console.WriteLine(k.ToString());//k="Ture"
12         }

 

int i=str.IndexOf("子串"):返回子串在字符串中第一次出现的位置。

int i=str.LastIndexOf("子串"):返回子串在字符串中最后一次出现的位置。

以上两函数,如果在字符串中找不到相应的子串,返回-1

eg.1

1  static void Main(string[] args)
2         {
3             string s = "abidfje";
4             int i = s.IndexOf("a");
5             Console.WriteLine(i);//i=1
6             int j = s.LastIndexOf("c");
7             Console.WriteLine(j);// j=-1
8         }

 

str.Substring():截取字符串 ******

 1 //eg.4 从身份证号中截取日期 x.substring(m)从第m个开始截取,截取到字符串尾
 2         //x.substring(m,n),从第m位截取n个
 3         static void Main4(string[] args)
 4         {
 5             Console.WriteLine("请输入你的身份证号:");
 6             string id=Console.ReadLine();
 7 
 8             string nian = id.Substring(6, 4);//从第6位截取4个
 9             string yue = id.Substring(10, 2);//从第10位截取2个
10             string ri = id.Substring(12, 2);//从第12位截取2个
11 
12             Console.WriteLine("你的出生日期是:{0}年{1}月{2}日。",nian,yue,ri);
13         }

Replace(string old,string new):(string)把字符串的old串换成new串

*Split('字符'):(string[])按照括号中的字符把字符串拆开成数组中的元素。

 

二、Math类

Math.Round(x,n); 四舍五入,X是数据,N是保留小数点后N位.

Math.Round(x);将x舍入为最接近其的整数
Math.Ceiling(n);取大于该小数的最小整数
Math.Floor(n);取小于该小数的最大整数
Math.Sqrt(a);开平方,平方根
Math.Pow(2,4); 求2的4次方

eg

 1  static void Main(string[] args)
 2         {
 3             int i = 20;
 4             double j = 23.5, k = 23.4, m = 23.456674;
 5 
 6             double n = Math.Round(m, 3);
 7             Console.WriteLine(n); //n=23.457;
 8 
 9             double b = Math.Round(m, 4);
10             Console.WriteLine(b);//b=23.4567;
11 
12 
13             int a = (int)Math.Round(j);
14             Console.WriteLine(a);//a=24;
15 
16             int c =(int) Math.Floor(j);
17             Console.WriteLine(c);//c=23;
18 
19             int d = (int)Math.Ceiling(j);
20             Console.WriteLine(d);//d=24;
21         }

 

三、datetime类

构造方法:DateTime dt = new DateTime([1990,2,5);

         DateTime dt = new DateTime(); //?

         DateTime dt = new DateTime(1990, 2, 5);//?

        DateTime dt = new DateTime(1990, 2, 5, 3, 44, 25);//?

当前时间:

DateTime dt = DateTime.Now;

日期时间对象的数据:

d.Year;     提取年份
d.Month;     提取月份
d.Day;    提取日期
d.Hour;     提取小时
 d.Minute;     提取分钟
 d.Second;     提取秒
d.Millisecond;     提取毫秒
d.DayOfYear;     获取日期是该年中第几天

d.DayOfWeek; 星期几

System.TimeSpan da = new TimeSpan(int days,int hours,int minutes,int seconds);//将新的系统时间初始化为指定的天数,小时数,分钟数和秒数。

ToString("yyyy年MM月dd日 hh时mm分ss秒") 按”年月日时分秒“表示出来

日期时间对象的函数:

AddYears(int num)

AddMonths(int num)

AddDays(int num)

AddHours(int num)

AddMinutes(int num)

AddSeconds(int num)

日期时间型数据可以直接相减,返回两个日期之间差的天数和时间。

ToString(格式字符串)函数:把日按照某种格式显示出来。

格式字符串:

yyyy——四位数字的年份

yy——两位数字的年份

MM——两位数字的月分,不足两位添0

M——1-2位数字的月份

dd——两位数字的天,不足两位添0

d——1-2位数字的天。

hh——12小时制

HH——24小时制

mm——分

ss——秒

ms——毫秒。

例如:

            DateTime dt = DateTime.Now;

            Console.WriteLine(dt.ToString("yyyy年MM月dd日hh时mm分ss秒"));

 

不止是日期时间型数据的ToString()函数中可以放格式化字符中。整数,小数的ToString()中也可以放格式化字符串。

小数和整数类型的格式化符号主要是有四个。

.——小数点

,——整数部份三位的分隔符

#——任意位数字,有几位显示几位

0——至少一位数字,不足则补0.

 

例:

#.00——必须保留两位小数。

四、例题

eg.1 定闹钟

 1  //eg.7 每天的特定时间都会响
 2         static void Main7(string[] args)
 3         {
 4             Console.WriteLine("请输入要提醒的时间点:");
 5             string s1 = Console.ReadLine();
 6             //string timenow = DateTime.Now.ToString("yyyy/MM/dd");
 7             string s2 = DateTime.Now.ToString().Substring(0,9);
 8             string newtime = s2  + s1;
 9             //Console.WriteLine(newtime);
10 
11             //string newtime = timenow + " " + s1;
12 
13             DateTime nt = Convert.ToDateTime(newtime);
14 
15             while (true)
16             {
17                 Console.Clear();//此句必须在输出之前,若之后才输出一次就清一次,就看不到结果!
18                 Console.WriteLine(DateTime.Now.ToString());
19 
20                 if (DateTime.Now.ToString().Equals(nt.ToString()))//tostring 应该写进格式去
21                 {
22                     Console.WriteLine("\a\a\a\a\a\a.....时间到了!");
23                     Console.WriteLine("你需要延长一段时间么? y/n");
24                     string aj = Console.ReadLine();
25 
26                     if (aj.ToLower() == "y")
27                     {
28                         nt = nt.AddSeconds(10);
29                     }
30                     else if (aj.ToLower() == "n")
31                     {
32                         break;
33                     }
34                     else
35                     {
36                         Console.WriteLine("你输入的有误!");
37                         break;
38                     }
39                 }
40 
41                 Thread.Sleep(1000);//此处比较好的做法就是放到程序的尾端(但具体延时情况具体分析)
42 
43             }

eg.2 测试身价

 1  //eg.8 测试姓名身价小游戏
 2         static void Main8(string[] args)
 3         {
 4             while (true)
 5             {
 6                 Console.WriteLine("请输入你的姓名:");
 7                 string r1 = Console.ReadLine();
 8                 int seed = 0;
 9 
10                 if (r1.Length == 2)
11                 {
12                     seed = (int)(Convert.ToChar(r1.Substring(0, 1))) + (int)(Convert.ToChar(r1.Substring(1, 1)));
13                 }
14                 else
15                 {
16                     seed = (int)(Convert.ToChar(r1.Substring(0, 1))) + (int)(Convert.ToChar(r1.Substring(1, 1)))
17                         + (int)(Convert.ToChar(r1.Substring(2, 1)));
18                 }
19 
20                 Random r = new Random(seed);
21                 int t = r.Next(5000000) + 500000;
22                 Console.WriteLine("你的身价是:{0}", +t);
23             }
24         }

 

posted @ 2015-07-08 23:14  其实哥很宅  阅读(447)  评论(0编辑  收藏  举报