C#(类)
一、String类
string s = " abCDefgb ";
int a = s.Length;//获取长度
Console.WriteLine(s.Length);
Console.Write(s.Trim());//去掉前后空格
Console.Write(s.TrimStart());//只去掉前面的空格
Console.WriteLine(123);
Console.Write(s.TrimEnd());//只去掉后面的空格
Console.WriteLine(s.ToUpper());//将全部小写字母转换为大写
Console.WriteLine(s.ToLower());//将所有大写字母转换为小写
Console.WriteLine(s.IndexOf("abc"));//返回第一次出现该字符或字符串的索引号
注意:索引号是从0开始
返回值为-1.表示没有找到该字符或字符串
Console.WriteLine(s.LastIndexOf("b"));//返回最后一次出现该字符或字符串的索引号
//substring截取字符串
写一个参数的时候,表示从这个索引号开始截取,一直到最后
两个参数表示,从哪个位置开始截取,截取多长
Console.WriteLine(s.StartsWith("ab"));//startswith 是否以**字符串开头
Console.WriteLine(s.EndsWith("b"));//endswith 是否以**字符串结尾
Console.WriteLine(s.Contains("CD"));//contains 是否包含
Console.WriteLine(s.Replace("b","BB"));//replace 替换
Console.WriteLine(s);
Console.ReadLine();
练习:判断邮箱格式是否正确
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 != )
{
if (mail.Substring(a - , ) != ".")
{
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类 数学类
Console.WriteLine(Math.Ceiling(4.4));//ceiling 取上限
Console.WriteLine(Math.Floor(4.4));//floor 取下限
Console.WriteLine(Math.Sqrt(4));//sqrt 开平方根
Console.WriteLine(Math.PI);//pi π 3.141592
Console.WriteLine(Math.Round(4.5));//round 四舍五入
//奇数.5的时候取得是上限
//偶数.5的时候取得是下限
Console.ReadLine();
三、DateTime 时间日期类型
DateTime dt = new DateTime();//使用之前应该进行初始化
DateTime dt = DateTime.Now;//获取当前时间
Console.WriteLine(dt);
Console.WriteLine(dt.Month);
获取年 dt.Year
获取月 dt.Month
获取日 dt.Day
获取小时 dt.Hour
获取分 dt.Minute
获取秒 dt.Second
Add() 增加或减少
TimeSpan span = new TimeSpan(3, 3, 3, 3);
Console.WriteLine(dt.Add(span));
//增加多少天
Console.WriteLine( dt.AddDays(-7.5));
四、随机数类 Random
初始化
Random ran = new Random();
int a = ran.Next(101);
int b = ran.Next(1,37);
练习
1.计算距离里约奥运会还有多少小时,北京时间8月6日 7:00开幕还有多少秒,秒数倒计时
DateTime dt1 = new DateTime();
dt1 = DateTime.Parse("2016/08/06 07:00:00");
DateTime dt2 = DateTime.Now;
int miao = (int)(dt1 - dt2).TotalSeconds;
for (; ; )
{
Console.WriteLine("距离奥运会开幕还有"+miao+"秒。");
System.Threading.Thread.Sleep();
miao--;
Console.Clear();
}
Console.ReadLine();
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解析的问题,那种方法在当时的环境是非常方便的,因为不需要生成实体类,结构很容易解析.但随着业务 ...
随机推荐
- install gcc under suse
SUSE 11中安装GCC开发环境 SUSE11中安装GCC开发环境 安装包下载网站:http://213.174.32.130/sles/distribution/11.0-SP1/repo/dis ...
- 使用grep恢复被删除文件内容【转】
http://www.cnblogs.com/ggjucheng/archive/2012/10/07/2714311.html Unix/Linux下,最危险的命令恐怕就属rm命令了,每次在root ...
- timestamp 与 rowversion
联机丛书: timestamp timestamp 这种数据类型表现自动生成的二进制数,确保这些数在数据库中是唯一的.timestamp 一般用作给表行加版本戳的机制.存储大小为 8 字节. 注释 T ...
- caller 属性和callee属性
1.caller 属性 返回一个对函数的引用,即调用了当前函数的函数体. functionName.caller :functionName 对象是所执行函数的名称. 说明: 对于函数来说,calle ...
- RMAN备份与恢复之数据文件
备份数据文件,模拟磁盘损坏时,还原恢复数据文件. 首先,查询数据文件序号,备份数据文件,可根据数据文件序号指定备份的数据文件. SQL SQL> select file_name,file_id ...
- 【故障处理】ORA-12162: TNS:net service name is incorrectly specified
本文将给大家阐述一个因未设置系统环境变量ORACLE_SID导致ORA-12162错误的案例.希望大家有所思考. 1.获得有关ORA-12162报错信息的通用表述信息[oracle@asdlabdb0 ...
- JSON.stringify(),JSON.parse(),toJSON()方法使用
JSON.stringify(),将value(Object,Array,String,Number...)序列化为JSON字符串 JSON.parse(), 将JSON数据解析为js原生值 ...
- 【linux】输出重定向
“>”:把正确结果输出到一个文件 [root@andon ~]# ls > 1 [root@andon ~]# cat 1 1 anaconda-ks.cfg install.log in ...
- LintCode "Backpack"
A simple variation to 0-1 Knapsack. class Solution { public: /** * @param m: An integer m denotes th ...
- Python基础教程【读书笔记】 - 2016/6/26
希望通过博客园持续的更新,分享和记录Python基础知识到高级应用的点点滴滴! 第一波:第6章 抽象 [总览] 介绍函数.参数parameter.作用于scope概念,以及递归概念. [6.1] 函 ...