C#的类
一、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#的类的更多相关文章
- Java类的继承与多态特性-入门笔记
相信对于继承和多态的概念性我就不在怎么解释啦!不管你是.Net还是Java面向对象编程都是比不缺少一堂课~~Net如此Java亦也有同样的思想成分包含其中. 继承,多态,封装是Java面向对象的3大特 ...
- C++ 可配置的类工厂
项目中常用到工厂模式,工厂模式可以把创建对象的具体细节封装到Create函数中,减少重复代码,增强可读和可维护性.传统的工厂实现如下: class Widget { public: virtual i ...
- Android请求网络共通类——Hi_博客 Android App 开发笔记
今天 ,来分享一下 ,一个博客App的开发过程,以前也没开发过这种类型App 的经验,求大神们轻点喷. 首先我们要创建一个Andriod 项目 因为要从网络请求数据所以我们先来一个请求网络的共通类. ...
- ASP.NET MVC with Entity Framework and CSS一书翻译系列文章之第二章:利用模型类创建视图、控制器和数据库
在这一章中,我们将直接进入项目,并且为产品和分类添加一些基本的模型类.我们将在Entity Framework的代码优先模式下,利用这些模型类创建一个数据库.我们还将学习如何在代码中创建数据库上下文类 ...
- ASP.NET Core 折腾笔记二:自己写个完整的Cache缓存类来支持.NET Core
背景: 1:.NET Core 已经没System.Web,也木有了HttpRuntime.Cache,因此,该空间下Cache也木有了. 2:.NET Core 有新的Memory Cache提供, ...
- .NET Core中间件的注册和管道的构建(2)---- 用UseMiddleware扩展方法注册中间件类
.NET Core中间件的注册和管道的构建(2)---- 用UseMiddleware扩展方法注册中间件类 0x00 为什么要引入扩展方法 有的中间件功能比较简单,有的则比较复杂,并且依赖其它组件.除 ...
- Java基础Map接口+Collections工具类
1.Map中我们主要讲两个接口 HashMap 与 LinkedHashMap (1)其中LinkedHashMap是有序的 怎么存怎么取出来 我们讲一下Map的增删改查功能: /* * Ma ...
- PHP-解析验证码类--学习笔记
1.开始 在 网上看到使用PHP写的ValidateCode生成验证码码类,感觉不错,特拿来分析学习一下. 2.类图 3.验证码类部分代码 3.1 定义变量 //随机因子 private $char ...
- C# 多种方式发送邮件(附帮助类)
因项目业务需要,需要做一个发送邮件功能,查了下资料,整了整,汇总如下,亲测可用- QQ邮箱发送邮件 #region 发送邮箱 try { MailMessage mail = new MailMess ...
- .NET平台开源项目速览(18)C#平台JSON实体类生成器JSON C# Class Generator
去年,我在一篇文章用原始方法解析复杂字符串,json一定要用JsonMapper么?中介绍了简单的JSON解析的问题,那种方法在当时的环境是非常方便的,因为不需要生成实体类,结构很容易解析.但随着业务 ...
随机推荐
- 低价替代Vector CANoe CAN总线适配解决方案支持所有USBCAN(周立功CAN、PCAN、Kvaser、ValueCAN、NI CAN)
在汽车通信领域CAN总线使用非常广泛,最强大的工具有Vector Case(10WRMB).Pcan(2KRMB),ZLGCAN(1.5KRMB),KVASER(2KRMB).ValueCAN(4KR ...
- 模拟20 题解(waiting)
留坑待填 T2 #include<cstdio> #include<vector> #include<cstring> #include<iostream&g ...
- list的基本使用
转自:https://www.cnblogs.com/BeyondAnyTime/archive/2012/08/10/2631191.html vector :vector和built-in数组类似 ...
- 2-2 Numpy-矩阵
# !usr/bin/env python # Author:@vilicute import numpy as np # 矩阵的创建 matr1 = np.mat("4 2 3;4 5 6 ...
- 完整版unity安卓发布流程(包括SDK有原生系统依赖关系的工程)
要3个东西!NDS,SDK,JDK, NDK官网下载:https://developer.android.google.cn/ndk/downloads/index.html(注意系统是不是64位) ...
- POJ1485 Sumdiv
Sumdiv Time Limit: 1000MS Memory Limit: 30000K Total Submissions: 22680 Accepted: 5660 Descripti ...
- 462. Minimum Moves to Equal Array Elements II
Given a non-empty integer array, find the minimum number of moves required to make all array element ...
- JMeter 参数意义
样本数目:运行时得到的取样器响应结果个数 最新样本:最近一个取样器结果的响应时间 平均:所有取样器结果的响应时间平均值 偏离:所有取样器结果的响应时间标准差 吞吐量:每分钟响应的取样器结果个数 中值: ...
- spring-cloud-zuul跨域问题解决
问题发现 正常情况下,跨域是这样的: 1. 微服务配置跨域+zuul不配置=有跨域问题 2. 微服务配置+zuul配置=有跨域问题 3. 微服务不配置+zuul不配置=有跨域问题 4. 微服务不配置+ ...
- Mac下搭建python开发环境
目录 1. 安装brew 2. 安装 mysql 3. 安装 pycharm 4. 安装python3.6 5. 安装virtualenvwrapper 6. 虚拟环境下安装mysqlclient 1 ...