3.11课·········C#类
String类:
.Length 字符的长度,返回一个int类型的值
.Trim() 去掉开头以及结尾的空格
.TrimStart() 去掉字符串开头的空格
.TrimEnd() 去掉字符串后面的空格
.ToUpper() 全部大写
.ToLower() 全部小写
Substring(起始位置,截取长度)
Substring(起始位置) 只写起始位置,可以截取到尾
身份证截取生日:
Console.Write("请输入身份证号:");
string s = Console.ReadLine();
if (s.Length == )
{
string y = s.Substring(, );
string m = s.Substring(, );
string d = s.Substring(, );
Console.WriteLine("您的生日是"+y+"年"+m+"月"+d+"日.");
}
else
{
Console.WriteLine("输入有误!");
}
IndexOf("字符串") 返回第一次出现此字符串的索引
LastIndexOf("字符串") 返回最后一次出现此字符串的索引
StartsWith("字符串") 是否以此字符串为开头,返回True或False
EndsWith("字符串") 是否以此字符串为结尾
Contains("字符串") 是否包含此字符串。返回True或者False
Replace("老字","新字") 将老字用新字替换
//string a = " abcdEfGh6t9w ";//前面4个空格,后面2个空格
//int i = a.Length;//i==18//一个空格算一个字符//获取字符串a的长度,返回一个int类型的值
//string b = a.Substring(6);//从第7个字符开始截取后面所有的字符串//b=="cdEfGh6t9w "
//string b = a.Substring(6, 5);//从第7个字符开始截取5个字符//b=="cdEfG"
//int c = a.IndexOf("d");//从前面开始找,找到第一个,从0开始数它的索引号//第一个"d"的索引号//若找不到则为-1
//int d = a.LastIndexOf("d");//从后面开始找,找到第一个,从0开始数它的索引号//最后一个"d"的索引号//若找不到则为-1
//若c==d,则a中只有一个"d"
练习:判断邮箱格式是否正确
1.有且只能有一个@
2.不能以@开头
3.@之后至少有一个.
4.@和.不能靠在一起
5.不能以.结尾
Console.Write("请输入您的邮箱号:");
string mail = Console.ReadLine();
bool a = mail.Contains("@");
if (a == true)//首先确认包含@
{
int b = mail.IndexOf("@");//从前面数索引号
int c = mail.LastIndexOf("@");//从后面数索引号
if (b == c)//只有一个@
{
if (b != )//不能以@开头
{
string mail1 = mail.Substring(b);//从@开始后面的索引号
if (mail1.Contains("."))//@后至少有一个.
{
int d = mail1.IndexOf(".");//从前面数.的索引号
if (d != )//@和.不在一起
{
int e = mail1.LastIndexOf(".");//从后面数.的索引号
if (e != mail1.Length - )//长度从1开始,而索引从0开始,所以长度需-1//不以.结尾
{
Console.WriteLine("您的邮箱格式输入正确!");
}
else
{
Console.WriteLine("不能以.结尾");
}
}
else
{
Console.WriteLine("@不能和.在一起");
}
}
else
{
Console.WriteLine("@后至少有一个.");
}
}
else
{
Console.WriteLine("不能以@开头!");
}
}
else
{
Console.WriteLine("邮箱号只能有一个@!");
}
}
else
{
Console.WriteLine("邮箱号必须包含@!");
}
Console.ReadLine();
随机数类`````Random
Random ran = new Random();//初始化
int s=ran.Next();//返回非负随机数
int a = ran.Next(10);//10以内的随机整数
int b =ran.Next(s.Length);//小于字符串s长度的随机一个数
int c = ran.Next(10,100);//10~100范围内的随机数,c>=10&&c<100,范围的上线必须大于等于范围的下线
随机出验证码,对照输入,判断正误!若输入错误,请重新输入:
string s = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQUVWXUZ0123456789";//长度为62,索引0~61
Random ran = new Random();
for (; ; )
{
string biao = "";
for (int i = ; i <= ; i++)//取四个字符
{
biao += s.Substring(ran.Next(s.Length), );//从小于字符串s长度的随机一个位置截取一个字符//biao是string类型,+表示拼接
}
Console.WriteLine(biao);
Console.Write("请输入验证码:");
string shu = Console.ReadLine();
if (shu.ToLower() == biao.ToLower())
{
Console.WriteLine("输入正确!");
break;
}
else
{
Console.Clear();//清屏,将屏幕上的信息都清掉
Console.WriteLine("输入错误!");
}
}
Console.ReadLine();
math类
double a = 3.5;
Console.WriteLine(Math.Ceiling(a));//上线//4
Console.WriteLine(Math.Floor(a));//下线//3
Console.WriteLine(Math.PI*a);//π,圆周率
Console.WriteLine(Math.Sqrt(a));//开平方根
Console.WriteLine(Math.Round(a));//四舍五入//奇数.5取上线,偶数.5取下线
3.11课·········C#类的更多相关文章
- C++11中对类(class)新增的特性
C++11中对类(class)新增的特性 default/delete 控制默认函数 在我们没有显式定义类的复制构造函数和赋值操作符的情况下,编译器会为我们生成默认的这两个函数: 默认的赋值函数以内存 ...
- Android快速开发不可或缺的11个工具类
Android快速开发不可或缺的11个工具类 :http://www.devst ore.cn/code/info/363.html
- c++11 可变参数模板类
c++11 可变参数模板类 #define _CRT_SECURE_NO_WARNINGS #include <iostream> #include <string> #inc ...
- OPENGL NEHE Lesson11 11课的计算公式推导
计算多边形公式推导: 条件x 离散的值从0到45; y离散的值从0到45; z是符合正弦波. 问题: 1 要求x’=f(x)映射到 x’ ∈[-4.5, 4.5], x ∈{0, 1, 2, …, 4 ...
- Js笔记-第11课
// 第11课 作用域精解 运行期上下文,当函数执行时,会创建一个成为执行期上下文的内部对象.一个执行期上下文定义了一个函数执行时的环境,函数每次执行时对应的执行期上下文都是独 ...
- 第11课 - enum, sizeof, typedef 分析
第11课 - enum, sizeof, typedef 分析 1. enum介绍 (1)enum是C语言中的一种自定义类型,和struct.union地位相同,格式如下: // enum每个值的最后 ...
- C++ primer plus读书笔记——第11章 使用类
第11章 使用类 1. 运算符重载是一种形式的C++多态. 2. 不要返回指向局部变量或临时对象的引用.函数执行完毕后,局部变量和临时对象将消失,引用将指向不存在的数据. 3. 运算符重载的格式如下: ...
- 第11课 Qt中的字符串类
1. 历史遗留问题和解决方案 (1)历史遗留问题 ①C语言不支持真正意义上的字符串 ②C语言用字符数组和一组函数实现字符串操作 ③C语言不支持自定义类型,因此无法获得字符串类型 (2)解决方案 ①从C ...
- C++11 单例类实现
单例类: (1) 单例类保证全局只有一个唯一的实例对象. (2) 单例类保证只有唯一的接口获取这唯一实例. 非线程安全的单例类举例: class CSingleton { public: ~CSing ...
随机推荐
- Spring IOC源代码具体解释之容器初始化
Spring IOC源代码具体解释之容器初始化 上篇介绍了Spring IOC的大致体系类图,先来看一段简短的代码,使用IOC比較典型的代码 ClassPathResource res = new C ...
- android 通过bitmapfactory得到图片真实像素的方法,以及没有得到真实像素的原因
原文来自:原文地址 由于这个错误导致浪费非常长时间找原因,所以要赶紧记录下来. 过程是这种,在使用android读取图片的时候,就是使用BitmapFactory.decodeResource(thi ...
- centos安装postgresql
#安装postgresqlyum -y install postgresql-server #执行数据库初始化脚本service postgresql-9.2 initdb #启动服务service ...
- scikit-learn---PCA(Principle Component Analysis)---KNN(image classifier)
摘要:PCA为非监督分类方法,常用于数据降维.为监督分类数据预处理,本例采用PCA对人脸特征提取先做降维处理,然后使用KNN算法对图片进行分类 ##1.PCA简介 设法将原来变量重新组合成一组新的互相 ...
- IBM Security App Scan 资料整理
转自:http://blog.csdn.net/u013147600/article/details/50002089 这是学习和使用IBM AppScan过程中总结整理的一些资料. 扫描系统操作 ...
- IOS开发——Core Graphics & Core Animation
好久没写过blog了.首先了解下近期苹果和IOS方面的最新消息. 1.WWDC2014在上个月举行了,与2013年一样.今年WWDC没公布硬件产品和新品(假设你懂cook你就会期待今年秋季公布会.估计 ...
- Apollo-open-capacity-platform 微服务能力开发平台 (转)
来自大佬的apollo整合微服务的教程:欢迎大家点评和star,链接如下:https://gitee.com/owenwangwen/open-capacity-platform 官方demo链接:h ...
- Python学习笔记(一)三步走安装pip
pip是用来方便地管理Python的第三方包的,由于此前玩Python仅仅是浅尝辄止,用的是python(x,y),但是这里并不代表你想用什么包都能从里面找到的,所以我把python(x,y)卸了,然 ...
- 查看Android源码和源码布局
一.查看源码 1.https://github.com/android 2.http://grepcode.com/project/repository.grepcode.com/java/ext/c ...
- C# virtual,override,new 整理
今天仔细学习了一下C#中virtual, override, new关键字,参考了网上的很多资料,现整理一下. Virtual: virtual 关键字用于修饰方法.属性.索引器或事件声明,并使它们可 ...