一、String类

1、Length 字符的长度

string x = Console.ReadLine();
int i = x.Length;// Length 是获取字符串的长度(从1开始数)
Console.Write(i);
Console.ReadLine();

2、

string dd = ss.Trim();//开头和结尾的空格全去除
dd = ss.TrimEnd();//结尾的空格去除
dd = ss.TrimStart();//开头的空格去除

x = x.Trim();//***Trim()***可以去掉字符串前后的空格
TrimStart() 去掉前面的空格,TrimEnd()去掉后面的空格

3、

dd=ss.Substring (3,3);//截取字符串,开始索引和截取长度

Substring(起始位置,截取长度)
Substring(起始位置) 只写起始位置,可以截取到尾

string p = x.Substring(a, b);
索引是从0开始 从第a位截取字符串,截取b个
Substring第一个数是从哪个索引开始截取,第二个是截取的长度

案例:身份证截取生日

4、ToUpper() 全部大写;ToLower() 全部小写

x = x.ToLower();//将字符串当中的大写英文字符转换成小写
x = x.ToUpper();//讲字符串当中的小写英文字符转换成大写

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

Replace("","");//替换所有符合指定段的字符串条件的字符串

6、都是用布尔值 bool

bool bb = ss.StartsWith("wq");//是不是以此字符串开始的字符串,返回bool//不是ture就是False

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

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

写法:

string ss="aasdfddscwefergreginlknsjooe";
int i=ss.indexOf("i");//第一个这样的字符所在的索引位置

int j=ss.LastindesOf("j");//最后一个这样的字符所在的索引位置

bool b=ss.StartsWith ("abv");//是否以这样的字符开头,返回Ture或者False
bool c=ss.EndsWith ("987");//是否以这样的字符结尾,
bool d=ss.Contains ("ABC");//是否包含这样的字符,返回True或者False

7、#用法

double d = 765765876583533.13;
string s = d.ToString("#,#.00");//小数点之前的每三位画一个逗号
string s = d.ToString("#.00");//小数点之后没有的显示00,有的显示本身
string s = d.ToString("#.##");//小数点后没有的显示整数部分,有的显示本身

double b = double.Parse( Console.ReadLine());
b = Math.Round(b);//奇数的.5取得是上线,偶数的.5取得是下线

二、Math类:

Ceiling() 取上线
Floor() 取下线
Math.PI 圆周率
Math.Sqrt() 平方根
Math.Round() 四舍五入(注意奇数偶数下.5不一样的结果)

写法:

double a = Math.PI; //π
a = Math.Sqrt(a); //平方根
Math.Round(); //四舍五入
Math.Ceiling(); //取上线
Math.Floor(); //取下线
Console.WriteLine(a);
Console.ReadLine();

三、Datetime类(注意在使用之前需要先初始化一遍。)

1、

DateTime dt =new DateTime();//若获取当前时间,可以不用初始化:

DateTime dt = DateTime.Now;//执行的一瞬间获取的电脑上的当前时间
Console.WriteLine(dt);

int nian = dt.Year;//单纯获取年份
int yue=dt.Month;//单纯获取月份
int tian=dt.Day;//单纯获取日期
int shi=dt.Hour;//小时
int fen = dt.Minute;//分钟
int miao = dt.Second;//秒
int g = dt.DayOfYear;//获取日期是当年的第几天

DayOfWeek d = dt.DayOfWeek;//获取这一天是星期几 ,获取到的是英文。若想用中文,先d.ToString(),然后根据英文打印出中文。

案例:

2、占位符

yyyy --年 year
MM --月Month
dd--日day
hh --时 hour
mm  --分minut
ss --秒second
以上是代位符。可以在字符串中先占用下这个空位。
string s = dt.ToString("yyyy年MM月dd日hh时mm分ss秒");

案例:

(1)、

(2)、输入必须符合DateTime的格式,才可以接受。

3、dt.Add

10000天之前是:

Add() 增加或者减去一定的时间间隔
AddYears() 增加或减去年份
AddMonths() 增加或减去月份
AddDays() 增加或减去天数
以此类推。
注意,加减天数,小时数是利用double类型。其他都是int类型

4、TimeSpan

System.TimeSpan time = new TimeSpan();//TimeSpan是一个时间间隔类型最多加到天(天数、小时、分钟、秒、)
dt = dt.Add(time );

三、练习题

1、随机生成一个四位数的验证码

2、输入天数N,打印出来N天后是星期几

星期五

3、判断邮箱格式是否正确

4、输入恋爱开始的时间,计算到今天

TotalDays 时间差具体到天数
DayOfyear 时间差具体到年数

另一种做法

C#的类的更多相关文章

  1. Java类的继承与多态特性-入门笔记

    相信对于继承和多态的概念性我就不在怎么解释啦!不管你是.Net还是Java面向对象编程都是比不缺少一堂课~~Net如此Java亦也有同样的思想成分包含其中. 继承,多态,封装是Java面向对象的3大特 ...

  2. C++ 可配置的类工厂

    项目中常用到工厂模式,工厂模式可以把创建对象的具体细节封装到Create函数中,减少重复代码,增强可读和可维护性.传统的工厂实现如下: class Widget { public: virtual i ...

  3. Android请求网络共通类——Hi_博客 Android App 开发笔记

    今天 ,来分享一下 ,一个博客App的开发过程,以前也没开发过这种类型App 的经验,求大神们轻点喷. 首先我们要创建一个Andriod 项目 因为要从网络请求数据所以我们先来一个请求网络的共通类. ...

  4. ASP.NET MVC with Entity Framework and CSS一书翻译系列文章之第二章:利用模型类创建视图、控制器和数据库

    在这一章中,我们将直接进入项目,并且为产品和分类添加一些基本的模型类.我们将在Entity Framework的代码优先模式下,利用这些模型类创建一个数据库.我们还将学习如何在代码中创建数据库上下文类 ...

  5. ASP.NET Core 折腾笔记二:自己写个完整的Cache缓存类来支持.NET Core

    背景: 1:.NET Core 已经没System.Web,也木有了HttpRuntime.Cache,因此,该空间下Cache也木有了. 2:.NET Core 有新的Memory Cache提供, ...

  6. .NET Core中间件的注册和管道的构建(2)---- 用UseMiddleware扩展方法注册中间件类

    .NET Core中间件的注册和管道的构建(2)---- 用UseMiddleware扩展方法注册中间件类 0x00 为什么要引入扩展方法 有的中间件功能比较简单,有的则比较复杂,并且依赖其它组件.除 ...

  7. Java基础Map接口+Collections工具类

    1.Map中我们主要讲两个接口 HashMap  与   LinkedHashMap (1)其中LinkedHashMap是有序的  怎么存怎么取出来 我们讲一下Map的增删改查功能: /* * Ma ...

  8. PHP-解析验证码类--学习笔记

    1.开始 在 网上看到使用PHP写的ValidateCode生成验证码码类,感觉不错,特拿来分析学习一下. 2.类图 3.验证码类部分代码 3.1  定义变量 //随机因子 private $char ...

  9. C# 多种方式发送邮件(附帮助类)

    因项目业务需要,需要做一个发送邮件功能,查了下资料,整了整,汇总如下,亲测可用- QQ邮箱发送邮件 #region 发送邮箱 try { MailMessage mail = new MailMess ...

  10. .NET平台开源项目速览(18)C#平台JSON实体类生成器JSON C# Class Generator

    去年,我在一篇文章用原始方法解析复杂字符串,json一定要用JsonMapper么?中介绍了简单的JSON解析的问题,那种方法在当时的环境是非常方便的,因为不需要生成实体类,结构很容易解析.但随着业务 ...

随机推荐

  1. win10 请求操作需要提升解决方案

    记录一下: win10   系统管理员 打开后缀为  .xxx 的文件时, 系统提示: 请求操作需要提升 网上搜索了一下,原因是权限不够,故系统提示. 给当前用户加入了 管理员权限,各种权限都无效. ...

  2. simple 单例

    Message* Message::m_pInstance = ;//类外初始 Message::Message() { } Message::~Message() { ) { delete Inst ...

  3. 【纯手工】整理豆瓣热点推荐列表-财经&自我管理

    [纯手工]整理豆瓣热点推荐列表-财经&自我管理  简七君 2013-10-27 09:40:06     豆瓣君的首页热点推荐实在难以捉摸,只有正好跳出推荐贴时才能按图索骥找列表.简七和小伙伴 ...

  4. 基于遗传算法(Genetic Algorithm)的TSP问题求解(C)

    基于遗传算法的TSP问题求解(C) TSP问题: TSP(Travelling salesman problem): 译作“旅行商问题”, 一个商人由于业务的需要,要到n个城市,每个城市之间都有一条路 ...

  5. 最短路径问题 HDU - 3790 (Dijkstra算法 + 双重权值)

    参考:https://www.cnblogs.com/qiufeihai/archive/2012/03/15/2398455.html 最短路径问题 Time Limit: 2000/1000 MS ...

  6. WebWork(在主线程创建子进程)

    WebWork浅谈 前言: 都知道JS是单线程语言,最让人头疼的莫过于在网络正常的情况下经常出现页面的假死, 以及在进行大量的for循环计算时会导致线程阻塞,由于要进行大量的计算JS后面的运行会被阻隔 ...

  7. Pyhton AES_cbc解密

    最近很多朋友问我加密解密有没有啥好推荐的方式,一般对AES的加密解密方式直接用在线加密或者解密就行,我为了方便测试,将网址以python脚本的形式写了出来,很简单的东西,2分钟搞定,随手记录一下~~ ...

  8. No.2 Verilog 模块和描述风格

    2-1 模块 Verilog语言基本的描述单元----模块,模块是用来描述某个设计的功能或结构,以及它与其它外部模块进行通信的端口. module module_name(port_list); De ...

  9. Node.js入门笔记

    第一步自然是安装了.我是用Webstorm这个ide,安装分2步: 1.安装nodejs,下载Windows下的安装版本号.注意是以msi为扩展名的,然后下一步.没啥好说的,下载地址例如以下: 32位 ...

  10. 洛谷P1879 玉米田

    题目描述 农场主John新买了一块长方形的新牧场,这块牧场被划分成M行N列(1 ≤ M ≤ 12; 1 ≤ N ≤ 12),每一格都是一块正方形的土地.John打算在牧场上的某几格里种上美味的草,供他 ...