C#基础知识

同一命名空间下的两个类
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;namespace HelloWorld
{class A{private int a;public A(int x) { a = x;  }public void show() { Console.WriteLine(a); }}class Program{static void Main(string[] args){A a = new A(100);a.show();Console.ReadKey();}}
}
基础数据类型
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;namespace HelloWorld
{  class Program{static void Main(string[] args){sbyte sbt = 127;  //8位有符号数,128超出范围,强制转换都不行Console.WriteLine(sbt);short sht = 10000; //16位有符号数int a = 1000000;   //32位有符号数long b = 100000000000; //64位有符号数//无符号整型有: byte ushort uint ulongchar c = 'A';   //字符型,而且无法隐式转换,可以显示转换Console.WriteLine(c);//浮点型有: float(32位) double(64位) decimal(128位)decimal dem = 1e-9M; //不能隐式转换,一般的数默认double, 加后缀M或者强制转换Console.WriteLine(dem);bool flag = true;  //bool型Console.WriteLine(flag);Console.ReadKey();}}
}
结构体
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;namespace HelloWorld
{  struct A{int a,b;public A(int a=0,int b = 0)//跟C语言不同,有访问级别{this.a = a;this.b = b;}public void show() { Console.WriteLine(a*b);  }}class Program{static void Main(string[] args){A obj =new A(12,13);obj.show();Console.ReadKey();}}
}
string字符串
string s = "hello world";
Console.WriteLine(s);
强制转换和格式
string s = Console.ReadLine();
double a = double.Parse(s); //强制转换
Console.WriteLine(a*1.7); //默认最多保留14位
s = String.Format("半径={0:f2}\n周长={1:f2}", a, 2 * 3.14* a);
Console.WriteLine(s);
空类型值
int? a;  //表明一个值可以为空类型
a = null;
int b;
if (a.HasValue)b = (int)a; //不能隐式转换
elseb = 1;
Console.WriteLine(b);
字符型
char ch = 'A';
char ch = '\101';      // 用8进制数表示ASCII字符,最多3位
char ch = '\x41';      //用2位16进制数表示ASCII字符
char ch = '\x0041';  //用低2位16进制数表示ASCII字符
char ch ='\u0041';   //Unicode字符,必须4位16进制数
char数据常用方法
char c =(char) Console.Read();
Console.WriteLine(c);
if (char.IsDigit(c))Console.WriteLine(c);//char.方法 的格式
string用法以及比较
char[] ch = { 'a', 'a', 'a' };
string s1 = new string(ch);
string s2 = "aa" + "a";
Console.WriteLine(s1==s2);
Console.WriteLine(s1.Equals(s2));
Console.WriteLine(s1.CompareTo(s2));
@的用法
C#字符串可以@开头,并用双引号引起来:√
string s3 = @"c:\myFolder\myFile.txt";
若要在一个用 @ 引起来的字符串中包括一个双引号,则应使用两个双引号:例如: "You!" cried the captain.则用: @"""You!"" cried the captain."
常见数值输出格式
 C 或 c
货币
Console.Write("{0:C}", 2.5);   //$2.50
Console.Write("{0:C}", -2.5); //($2.50)D 或 d
十进制数
Console.Write("{0:D5}", 25);   //00025E 或 e
科学型
Console.Write("{0:E}", 250000);   //2.500000E+005F 或 f
固定点
Console.Write("{0:F2}", 25);   //25.00
Console.Write("{0:F0}", 25);   //25G 或 g
常规
Console.Write("{0:G}", 2.5);   //2.5N 或 n
数字
Console.Write("{0:N}", 2500000);   //2,500,000.00X 或 x
十六进制
Console.Write("{0:X}", 250);   //FA
Console.Write("{0:X}", 0xffff);   //FFFF
类型转换
string s = "123";
int a = System.Convert.ToInt32(s);
Console.WriteLine(a);
s = "2016/02/27";
DateTime dt = System.Convert.ToDateTime(s);
Console.WriteLine(dt);
日期类型
DateTime date1 = DateTime.Now;     //获得当前系统日期和时间
DateTime date2 = new DateTime(2014,10,1);    //年月日
Console.WriteLine(date1);   //日期和时间
Console.WriteLine(date2.ToLongDateString());  //长日期 2014年10月1日
Console.WriteLine(date2.ToShortDateString()); //短日期 2014/10/1
Console.WriteLine(date1.Year);   //年
Console.WriteLine(date1.Hour);   //时
Console.WriteLine(date2.ToString("yyyy-MM-dd"));   //格式化 2014-10-01
object类型
装箱:将值类型转化为object类型int i=10;object o1=i;                  //隐式装箱object o2=(object)i;      //显式装箱拆箱:将obj类型转化为一个值类型int i=10;object obj=i;    //装箱int j=(int)obj;   //拆箱
var弱类型
1. var变量必须在定义时初始化:var i=100;    //OKvar s;  s = "abcd";     //NO,必须var s= "abcd";
2. 不能给var变量赋与初始化值类型不同的值:var s= "abcd";     s="hello";   //OKs=100;   //NO
3. var要求是局部变量。
4. var定义变量和object不同,它在效率上和使用强类型方式定义变量完全一样。(装箱与拆箱的过程是很损耗性能的)
ref引用
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;namespace HelloWorld
{  class Program{static void Swap(ref int a, ref int b){int t=a;a = b;b = t;}static void Main(string[] args){int a = 3, b = 4;Console.Write("{0},{1}\n",a,b);Swap(ref a,ref b); //要加refConsole.Write("{0},{1}\n",a,b);Console.ReadKey();}}
}
foreach用法
int odd = 0, even = 0;
int[] arr = { 1, 3, 5, 8, 11 };
foreach(int x in arr)if (x % 2 == 0)even++;elseodd++;
Console.WriteLine("{0},{1}",odd,even);
异常处理
try
{ //执行的代码(可能有异常)。//一旦发现异常,则立即跳到catch执行。
}
catch
{ //处理异常。(若try行代码没有异常,则不执行catch内代码)
}
finally
{ //不管是否有异常都会执行finally,包括catch 里面用了return。
}
二维数组和交错数组
int[,] a = new int[2, 3];
for (int i = 0; i < 2; i++)for (int j = 0; j < 3; j++)a[i,j] = i * 3 + j;
for(int i=0; i<2; i++)
{for (int j = 0; j < 3; j++)Console.Write("{0} ",a[i,j]);Console.WriteLine();
}
/* 交错数组 */
int[][] jaggedArr = new int[4][]; //变长
jaggedArr[0] = new int[] { 1, 3, 5, 7, 9, 11 };
jaggedArr[1] = new int[] { 1, 1 };
jaggedArr[2] = new int[] { 2, 4, 6 };
jaggedArr[3] = new int[] { 1, 0, 0, 0, 1 };
ArrayList
ArrayList arrlist1 = new ArrayList();
//新增数据,可以是任何类型
arrlist1.Add(123);
arrlist1.Add("abc");
//修改数据
arrlist1[1] = 100;
//插入数据
arrlist1.Insert(1, "xyz");
//移除数据
//arrlist1.RemoveAt(0);
Console.WriteLine("元素个数=" + arrlist1.Count );
foreach (var x in arrlist1)   Console.WriteLine(x);List<string> list = new List<string>();
list.Add("Tom");
list.Add("Mary");
list.Insert(1, "Mike");
//添加数组
string[ ] ss = { "Jerry", "Jim", "David" };
list.AddRange(ss);
list.Remove("Jerry");
list.RemoveAt(0);     //删除
list.Sort();  //排序,默认升序
list.Reverse();  //反序
if( ! list.Contains("Jerry"))Console.WriteLine("Jerry已经不存在了!");
Console.WriteLine("元素个数=" + list.Count);
foreach (string x in list)  Console.WriteLine(x);
list.Clear();  //清空

C#相关基础知识点总结+基础代码相关推荐

  1. python基础知识点-Python入门基础知识点(基础语法介绍)

    计算机基础知识介绍 计算机核心部件分为CPU,内存,硬盘,操作系统 1.CPU:中央处理器,相当于人大脑 2.内存:临时存储数据.现在通常分为 8g和16g(不能替代硬盘的原因:1,成本高 2,断电即 ...

  2. java重要基础知识点_java基础知识点整理

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 java基础知识点整理1.&和&&的区别? &:逻辑与(and),运算符两边的表达式均为true时,整个结果才为true. ...

  3. 计算机python技术基础知识点_python基础--相关计算机基础知识

    计算机基础之编程 什么是编程语言 人与计算机交流的介质 什么是编程 通过编程语言写一堆文件 为什么要编程 替代劳动力,完成人类的需求 计算机组成 CPU 控制器 控制硬件 运算器 算术运算和逻辑运算 ...

  4. 高一计算机应用基础知识点,计算机应用基础知识点

    第一章 计算机基础知识 1.1946年2月15日世界上第一台电子计算机ENIAC(埃尼阿克)在美国宾州 大学研制成功. 2.计算机发展史: 第一代:电子管计算机 采用电子管为基本元件,设计使用机器语言 ...

  5. python基础知识点-Python基础中的29个知识点

    (1)input和raw_input的区别: # -*- coding:utf-8 -*- #除非有特别需要,应该尽量用raw_input x = input("请输入您的名字:" ...

  6. java基础知识点_JAVA基础知识

    1.注释,关键字,标识符 1.注释 (1)注释:解释说明程序的而文字. (2)注释的分类:单行注释 格式: //注释的文字 多行注释 格式:/*注释的文字*/ 文档注释 格式:/**注释的文字*/ ( ...

  7. 一年级计算机应用基础重点,计算机应用基础各章重点知识点.doc

    文档介绍: 计算机应用基础各章重点知识点,计算机应用基础自考,计算机应用基础知识点,计算机基础知识点归纳,计算机应用基础 2018,大学计算机应用基础知识点,计算机应用基础教材,计算机应用基础wind ...

  8. Smali相关的基础知识点

    通过本篇博客的学习,相信你可以无压力的读懂Smali语言文件,并可以将Smali还原成java!!! 其实Smali语言并不是很难,如果你有一些汇编指令的基础,学习Smali就更加简单了,有兴趣的可以 ...

  9. python代码入门教程_Python入门教程丨1300多行代码,让你轻松掌握基础知识点

    欢迎关注小编,除了分享技术文章之外还有很多福利,私信学习资料可以领取包括不限于Python实战演练.PDF电子文档.面试集锦.学习资料等. 前言 本文适合有经验的程序员尽快进入Python世界.特别地 ...

最新文章

  1. android qq三方登录授权失败,QQ第三方登陆授权失败110401原因及解决办法分享
  2. 【题解】luogu p1032 字串变换
  3. baidu的服务器数据里面装的都是垃圾!
  4. 如何巧妙拒绝老同学借钱?哈哈哈哈哈......
  5. 洛谷 一种堆套路 P1631序列合并、P2085最小函数值
  6. 【kafka】kafka 消费速度 小于 日志清理速度 (kafka数据被清理了)会发生什么 auto.offset.reset 参数
  7. mysql影响行数解析_详解MySQL的数据行和行溢出机制
  8. Smarty的入门使用
  9. Linux实战教学笔记24:SSH连接原理及ssh-key
  10. Unity可编程渲染管线系列(八)全局光照(直接光照)
  11. 继电器rc吸收电路取值_RC吸收电路
  12. linux关键vi按什么键n,linux vi 使用方法
  13. Spring Boot技术知识点:如何实现二维码生成工具
  14. IB书单推荐:没有所谓的“闲书”
  15. Java开发常用词汇表
  16. [Note] 多项式全家桶 小球与盒子 分拆数
  17. osg 根据两个点的经纬度计算方位角
  18. 钢琴谱coda是什么意思
  19. 6-4 计算圆柱体的表面积(函数名隐藏)
  20. IC卡是什么意思?ID卡区别是?

热门文章

  1. WireShark抓包之提示Alert Level: Fatal, Description: HandShake Failure
  2. Git之如何解决Error:pathspec ‘/layout/radar_chart.xml‘ did not match any file(s) known to
  3. 【C语言简单说】二十:指针基础
  4. pytorch forward_【Pytorch部署】TorchScript
  5. get到一个生气后的牵手方式!太可爱了
  6. 清华男神再获世界大奖,从放牛娃到清华校长,他考研3次,读博7年,做出诺奖级的科研成果...
  7. 分布式之数据库和缓存双写一致性方案解析!
  8. 从基础概念到数学公式,这是一份520页的机器学习笔记(图文并茂)
  9. 2020下半年新机最新消息_提前剧透 2020 年下半年五大新机
  10. mysql分析日志_MYSQL 索引(三)--- SQL日志分析