C# int与string一起操作时注意

1 int a1= 1;
2 string a2= "2";
3 Console.WriteLine(a1+a2);
4 Console.ReadKey();
5 //在和string一起操作时,C#会把int转换为string,来实现两个string之间的连接,结果是12,不是3

C# 运算符重载

 namespace 运算符重载{

     class Program
{
public int Value { get; set; }
static void Main(string[] args)
{
// 运算符重载
///若要在自定义类中重载运算符,您需要在该类中创建具有正确签名的方法。
/// 该方法必须命名为“operator X”,其中 X 是正在重载的运算符的名称或符号。
/// 一元运算符具有一个参数,二元运算符具有两个参数。
/// 在每种情况下,参数的类型必须与声明该运算符的类或结构的类型相同
/// public static Complex operator +(Complex c1, Complex c2) Program t1 = new Program();
t1.Value = ;
Program t2 = new Program();
t2.Value = ;
Program t3 = t1 * t2;
Console.WriteLine(t3.Value);
Console.ReadKey(); } public static Program operator * (Program p1,Program p2)
{
Program t1 = new Program();
t1.Value = p1.Value + p2.Value;
return t1;
}
}
}

Lambda表达式

 namespace Lambda
{ class Program
{
delegate void dl();
static void Main(string[] args)
{
//lambda表达式
dl d = delegate () { Console.WriteLine("this is a test"); };
d();
dl d1 = () => Console.WriteLine("where am i?");
d1();
dl d2 = () => { Console.WriteLine("what you say"); Console.WriteLine("Are you Sure?"); };
d2();
Console.ReadKey();
}
}
}

File方法练习

 namespace File类方法练习
{ class Program
{ static void Main(string[] args)
{ string FilePath = @"e:\\11.txt";
string FileNewPath = @"e:\\22.txt"; //写文件
File.WriteAllText(FilePath, "this is a test for file function");
//读文件
string data = File.ReadAllText(FilePath);
Console.WriteLine(data);
//复制文件
File.Copy(FilePath, FileNewPath);
//删除文件
File.Delete(FilePath); Console.ReadKey(); }
} }

匿名类型 匿名方法 Anonymous Type

 namespace 匿名类型匿名方法Anonymous_Type
{
delegate void Speak(string a);
class Program
{
static void Main(string[] args)
{
//匿名类型
var n = new {name = "school",age=};
Console.WriteLine(n.name);
Console.WriteLine(n.age);
//匿名方法
Speak ss = delegate (string b) { Console.WriteLine("this is the string {0}", b); };
ss("what do you want?");
Console.ReadKey(); }
}
}

C# 99乘法表

 namespace 乘法表
{
class Program
{
static void Main(string[] args)
{
//99乘法表的程序
int[] num = new int[];
for (int i = ; i < ; i++)
{
num[i] = i;
}
Console.ForegroundColor = ConsoleColor.Red;
for (int i = ; i < ; i++)
{
for (int j = ; j < i; j++)
{ Console.Write("{0}X{1}={2} ", num[i], num[j], num[i] * num[j]);
if (num[i] * num[j] < )
{
Console.Write(" ");
} }
Console.WriteLine();
}
Console.ReadKey(); }
}
}

C# 运算符重载Operator使用

 namespace  Operator运算符重载
class Speak
{
public string _name;
public Speak(string a)
{
this._name = a;
}
public static Speak operator * (Speak a1,Speak a2)
{
return new Speak ( a1._name + a2._name );
}
} class Program
{
static void Main(string[] args)
{
Speak s1 = new Speak("jingya");
Speak s2 = new Speak("dongbao");
Speak s3 = s1 * s2;
Console.WriteLine(s3._name);
Console.ReadKey();
}
}
}

C# linq简单用法

 namespace LINQ简单用法
{ class girl
{
public string _name { get; set; }
public int _age;
} class Program
{
static girl[] cc = new girl[]
{
new girl {_name = "小明",_age = },
new girl {_name = "小东",_age = },
new girl {_name = "小丽",_age = } }; static void Main(string[] args)
{
string[] ss = { "this is a very things" ,"inga","jiaoofdjaoisdjfoia","kjadofjasing"}; var query = from p in ss where p.Contains("ver") select p;
foreach (var item in query)
{
Console.WriteLine(item);
}
var query2 = from pp in cc where pp._age < select pp;
foreach (var item in query2)
{
Console.WriteLine(item._name);
}
Console.ReadKey();
}
}
}

C# 委托与事件

 namespace 委托与事件
{
delegate string CompareEventHandler(int num1,int num2); class Program
{
static void Main(string[] args)
{ CompareEventHandler dd = CompareFunction.Compare;
//注册事件
EventClass ccc = new EventClass();
ccc.CompareEvent +=dd;
ccc.CC(,);
Console.ReadKey();
} }
class CompareFunction
{
public static string Compare(int i ,int j )
{
if (i > j)
{
return "前面的大";
}
else
{
return "后面的大";
}
}
}
class EventClass
{
public event CompareEventHandler CompareEvent;
public void CC(int i ,int j )
{
if(CompareEvent != null)
{
Console.WriteLine(CompareEvent(i,j));
}
else
{
Console.WriteLine("The Event is over!");
}
} } }

C# Enum遍历

 1 namespace Enum遍历
2 {
3 enum aa { a = 1, b = 2,c= 3};
4 class Program
5 {
6 static void Main(string[] args)
7 {
8 foreach (var a in Enum.GetValues(typeof(aa)))
9 {
10 string s = $" {a} ";
11 Console.WriteLine(s);
12 }
13 //上面输出的是 a b c
14 foreach (int a in Enum.GetValues(typeof(aa)))
15 {
16 string s = $" {a} ";
17 Console.WriteLine(s);
18 }
19 //上面这段代码输出的是 1 2 3
20 //感觉这个可能是枚举类型的一个方法,虽然Enum.GetValues返回的是一个数组,但是这个数组
21 //是string类型数组,还是int类型数组,是有var 或者int决定的
22 Console.ReadKey();
23 }
24 }
25 }

C# 迭代器中IEnumerator \ IEnumerable \ Getnumerator的使用

 1 namespace IEnumerable用法
2 {
3
4 class Program
5 {
6 static void Main(string[] args)
7 {
8 stack aa = new stack();
9 foreach (var item in aa)
10 {
11 Console.WriteLine(item);
12 }
13 Console.WriteLine();
14 Console.ReadKey();
15 }
16 }
17 //下面的例子是普通的类继承IEnumerable接口,用yield return返回一个枚举类型
18 public class stack : IEnumerable
19 {
20 string[] ss = { "GG", "dd", "xx", "abc" };
21 public IEnumerator GetEnumerator()
22 {
23 for (int i = 0; i < ss.Length; i ++)
24 {
25 yield return ss[i];
26
27 }
28 }
29 }
30 }

C# 中标准事件、委托EventHandler、参数类EventArgs用法

 namespace 标准事件用法
{
class Program
{
static void Main(string[] args)
{
Bank jianhang = new Bank("建设银行",);
People dong = new People("", jianhang);
jianhang.PlayByCard();
Console.WriteLine();
Console.ReadKey();
}
}
public class CarEventArgs : EventArgs
{
private string _name;
private int _amount;
private int _yue;
public int Yue
{
set { _yue = value; }
get { return _yue; }
}
public string Name
{
set { _name = value; }
get { return _name; }
}
public int Amount
{
set { _amount = value; }
get { return _amount; }
} }
class Bank
{
public string BankName { set; get; }
public int Balance { set; get; }
public Bank(string s ,int i )
{
this.BankName = s;
this.Balance = i;
} public event EventHandler<CarEventArgs> MyEvent; public void PlayByCard(int i)
{
CarEventArgs cc = new CarEventArgs();
cc.Amount = i;
cc.Yue = this.Balance - i;
cc.Name = this.BankName;
if (MyEvent != null)
{
MyEvent(this,cc); //调用事件只能在其中加Object和EventArgs
}
else
{
Console.WriteLine("系统故障,请紧急联系客服看看你的钱还有没有!");
}
}
}
class People
{
public string id;
public People(string ID,Bank bb)
{
this.id = ID;
bb.MyEvent += Paycard; //通过匿名方法,将方法给EventHandler委托,再给事件
}
private void Paycard(object o ,CarEventArgs e)
{ Console.WriteLine( $"尊敬的{id},您好,您从{e.Name}银行消费了{e.Amount}元,余额为{e.Yue}");
}
}
}

C# 属性SET GET前的访问修饰符

         private string _name;
public string Name
{
protected set { _name = value; }
private get { return _name; }
//属性SET、GET上的访问修饰符默认是跟属性前面的修饰符一样,
//如果非要在get或者set上加访问修饰符,就要比前面的属性上的访问修饰符“小”
}

C# 类中的无限循环

 namespace 类中的无限循环
{
class Mytest
{
private int i = ;
public void Speak()
{
Mytest ss = new Mytest();
{
if (i < ) { Speak(); } }
Console.WriteLine("this is a test!");
i--;
}
}
class Program
{
static void Main(string[] args)
{
Mytest aa = new Mytest(); aa.Speak();
aa.Speak();
aa.Speak();
aa.Speak();
aa.Speak();
aa.Speak();
aa.Speak();
aa.Speak();
aa.Speak();
aa.Speak();
aa.Speak(); }
}
}

C#基础概念 代码样例的更多相关文章

  1. 2020JAVA最新应对各种OOM代码样例及解决办法

    引言 作者:黄青石 链接:https://www.cnblogs.com/huangqingshi/p/13336648.html?utm_source=tuicool&utm_medium= ...

  2. 33个超级有用必须要收藏的PHP代码样例

    作为一个正常的程序员,会好几种语言是十分正常的,相信大部分程序员也都会编写几句PHP程序,如果是WEB程序员,PHP一定是必备的,即使你没用开发过大型软件项目,也一定多少了解它的语法. 在PHP的流行 ...

  3. java servlet 代码样例 (demo)

    今天又搞了下jsp +servlet 的代码样例,感觉虽然搭了好多次,可是每次还是不记得那些参数,都要去网上搜索,索性自己把这次的简单demo给记录下来,供下次使用的时候直接复制吧. 这个web逻辑 ...

  4. zookeeper实战:SingleWorker代码样例

    我们需要一个“单点worker”系统,此系统来确保系统中定时任务在分布式环境中,任意时刻只有一个实例处于活跃:比如,生产环境中,有6台机器支撑一个应用,但是一个应用中有30个定时任务,这些任务有些必须 ...

  5. 30个php操作redis经常用法代码样例

    这篇文章主要介绍了30个php操作redis经常用法代码样例,本文事实上不止30个方法,能够操作string类型.list类型和set类型的数据,须要的朋友能够參考下 redis的操作非常多的,曾经看 ...

  6. JAVA各种OOM代码样例及解决方法

    周末了,觉得我还有很多作业没有写,针对目前大家对OOM的类型不太熟悉,那么我们来总结一下各种OOM出现的情况以及解决方法. 我们把各种OOM的情况列出来,然后逐一进行代码编写复现和提供解决方法. 1. ...

  7. PHP代码样例

    1 <?php 2 3 /** 4 * 时间:2015-8-6 5 * 作者:River 6 * 超级有用.必须收藏的PHP代码样例 7 */ 8 class Helper { 9 10 /** ...

  8. JMeter入门(01)概念和样例

    一.概念 JMeter 是一款专门用于功能测试和压力测试的轻量级测试开发平台,实现了许多和互联网相关的网络测试组件,同时还保留着很强的扩展性. JMeter可以用来测试诸如:静态文件,Java Ser ...

  9. Java操作HDFS代码样例

    代码在GitHub上. 包括如下几种样例代码: 新建文件夹 删除文件/文件夹 重命名文件/文件夹 查看指定路径下的所有文件 新建文件 读文件 写文件 下载文件至本地 上传本地文件 https://gi ...

随机推荐

  1. luogu2761 软件补丁问题 状态压缩最短路径

    关键词:状态压缩 最短路径 想不出快速办法,就先考虑考虑暴力.枚举每一种错误分布的情况,然后通过可用的补丁转化为另多种情况,这些情况又转化为更多种情况……我们可以用图来表示这种关系! 状态压缩:每个错 ...

  2. (转)android res文件夹里面的drawable(ldpi、mdpi、hdpi、xhdpi、xxhdpi)

    android res文件夹里面的drawable(ldpi.mdpi.hdpi.xhdpi.xxhdpi) (1)drawable-hdpi里面存放高分辨率的图片,如WVGA (480x800),F ...

  3. ServletContextAware、ServletRequestAware、ServletResponseAware、SessionAware

    转自:ServletContextAware.ServletRequestAware.ServletResponseAware.SessionAware Struts 2提供了Aware接口.Awar ...

  4. POJ 3275 Floyd传递闭包

    题意:Farmer John想按照奶牛产奶的能力给她们排序.现在已知有N头奶牛(1 ≤ N ≤ 1,000).FJ通过比较,已经知道了M(1 ≤ M ≤ 10,000)对相对关系.每一对关系表示为&q ...

  5. POJ 2752 KMP中next数组的应用

    题意: 让你从小到大输出给的字符串中既是前缀又是后缀的子串的长度. 思路: 先要了解这个东西: KMP中next数组表示的含义:记录着字符串匹配过程中失配情况下可以向前多跳几个字符,它描述的也是子串的 ...

  6. F - Dima and Lisa(哥德巴赫猜想)

    Problem description Dima loves representing an odd number as the sum of multiple primes, and Lisa lo ...

  7. Solr.NET快速入门(五)【聚合统计,分组查询】

    聚合统计 属性 说明 Min 最小值 Max 最大值 Sum 总和 Count 记录数,也就是多少行记录 Missing 结果集中,有多少条记录是空值 SumOfSquares 平方和(x1^2 + ...

  8. elasticsear+kibana+logstash 优化

    ##关于s2安装cerebro来可视化集群管理##### https://blog.csdn.net/RWSLR6/article/details/79648767 https://github.co ...

  9. Svn install and use

    1.安装服务 使用yum安装subversion,简单.不繁琐. 1 yum install -y subversion 2.创建版本库 1 2       mkidr /svn/obj        ...

  10. lua lfs库

     lfs.attributes(filepath [, aname]) 获取路径指定属性    lfs.chdir(path) 改变当前工作目录,成功返回true,失败返回nil加上错误信息    l ...