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 }
C# 课堂总结4-类(常用的类)的更多相关文章
- js常用工具类.
一些js的工具类 复制代码 /** * Created by sevennight on 15-1-31. * js常用工具类 */ /** * 方法作用:[格式化时间] * 使用方法 * 示例: * ...
- JS面向对象(1) -- 简介,入门,系统常用类,自定义类,constructor,typeof,instanceof,对象在内存中的表现形式
相关链接: JS面向对象(1) -- 简介,入门,系统常用类,自定义类,constructor,typeof,instanceof,对象在内存中的表现形式 JS面向对象(2) -- this的使用,对 ...
- C#File类常用的文件操作方法(创建、移动、删除、复制等)
File类,是一个静态类,主要是来提供一些函数库用的.静态实用类,提供了很多静态的方法,支持对文件的基本操作,包括创建,拷贝,移动,删除和 打开一个文件. File类方法的参量很多时候都是路径path ...
- IOS开发--常用工具类收集整理(Objective-C)(持续更新)
前言:整理和收集了IOS项目开发常用的工具类,最后也给出了源码下载链接. 这些可复用的工具,一定会给你实际项目开发工作锦上添花,会给你带来大大的工作效率. 重复造轮子的事情,除却自我多练习编码之外,就 ...
- Apache Commons 常用工具类整理
其实一直都在使用常用工具类,只是从没去整理过,今天空了把一些常用的整理一下吧 怎么使用的一看就明白,另外还有注释,最后的使用pom引入的jar包 public class ApacheCommonsT ...
- Android 常用工具类之SPUtil,可以修改默认sp文件的路径
参考: 1. 利用Java反射机制改变SharedPreferences存储路径 Singleton1900 2. Android快速开发系列 10个常用工具类 Hongyang import ...
- 封装一个简单好用的打印Log的工具类And快速开发系列 10个常用工具类
快速开发系列 10个常用工具类 http://blog.csdn.net/lmj623565791/article/details/38965311 ------------------------- ...
- C# Datetime类常用技巧
C#类常用技巧 //今天DateTime.Now.Date.ToShortDateString();//昨天,也就是今天的日期减一DateTime.Now.AddDays(-1).ToShortDat ...
- Delphi中TStringList类常用属性方法详解
TStrings是一个抽象类,在实际开发中,是除了基本类型外,应用得最多的. 常规的用法大家都知道,现在来讨论它的一些高级的用法. 先把要讨论的几个属性列出来: 1.CommaText 2.Delim ...
随机推荐
- software quality assurance 常见问题收录
1. What is Quality? Quality means, “meeting requirements.” ..Whether or not the product or service d ...
- Oracle 集群心跳及其參数misscount/disktimeout/reboottime
在Oracle RAC中,能够从多个层次,多个不同的机制来检測RAC的健康状况,即能够通过心跳机制以及一定的投票算法来隔离故障.假设检測到某节点失败,则存在故障的节点将会被逐出集群以避免故障节点破坏数 ...
- Intellij IDEA创建Maven Web项目
1前言 在创建项目中,IDEA提供了非常多项目模板,比方Spring MVC模板,能够直接创建一个基于Maven的Spring MVC的demo,各种配置都已经设定好了,直接编译部署就能够使用. 最開 ...
- 使用LINQ的几个小技巧
这里总结了这些技巧.介绍如何使用LINQ来: 初始化数组 在一个循环中遍历多个数组 生成随机序列 生成字符串 转换序列或集合 把值转换为长度为1的序列 遍历序列的所有子集 如果你在LINQ方面有心得也 ...
- ClassLoader简单介绍
要理解ClassLoader,我们可以通过what.how两个方面来解释 一.what:什么事ClassLoader? 1.ClassLoader可以是将class文件加载到JVM方法区. 2.Cla ...
- Jmeter 发送json{Jfinal 接口req rsp均为json}
链接地址:http://yangyoupeng-cn-fujitsu-com.iteye.com/blog/2013649 使用jmeter发送json数据.方法有三种 原创,转载请注明出处 1.利用 ...
- hibernate懒加载和json序列化冲突
因为懒加载这个对象属性只是一个代理对象,如果json直接当作一个存在的属性去序列化就会出现错误,所以就只能这样了,当然还有其他办法吧 或者在class上加上 @JsonIgnoreProperties ...
- HNOI2016 网络
题目 朴素算法 在线. 树链剖分套一个堆. 时间复杂度\(O(n (\log n)^3)\). 分治 朴素算法中,套一个堆是为了支持删除操作. 采用以下分治可以避免删除操作: 每次对时间\([l,r] ...
- java学习之实现文件的复制
package com.io; import java.io.*; import java.text.SimpleDateFormat; import java.util.Date; /** * 文件 ...
- Agg学习笔记
很久前就听一大牛说起Agg,据说是一个架构极度牛B的2D引擎,沉寂了许久,最后花了两周时间走马观花地把它过了一遍.果然如那大牛所言,这家伙简直就是巧夺天工的艺术品.今天稍稍瞄了一下Google扔出来的 ...