第一章:

1.C#创建程序的基本结构

class 类名

{

  static void Main(string[]args)
{ }
}

注意:
1)namespace
2)using
3)类名命名规则:字母、数字、_组成 数字不能开头 不能是关键字 首字母大写
4)Main4种
static void Main(){}
static int Main(){}
static void Main(string []args){}
static int Main(string[]args){}

2.C#数据类型
基本:
int
double
char
bool
float
引用:
string
数组

3.C#定义变量

int a=;
int a;
a=;

4.常量定义
const int a=3.14;
注意: 常量一旦定义之后就不允许去修改

5.C#向控制台输出数据:Console.WriteLine(); Write();
接收数据:Console.ReadLine();

6.C#方法定义
public/private 返回值类型 方法名(参数列表)
{
主体;
}

7.类和对象
类的成员:字段(private)、属性(public)、方法(public)

class Student
{
private int age;
public int Age
{
get{return age;}
set{if(value<){age=;}else{age=value;}}
} public void Study(){} } Student a=new Student();
a.Age = ;
a.Study();
 8. 注释
  C#中有三种注释, 分别是单行: // 多行 /* */  文档 ///

9. 调试: F9设置断点    F5启动调试

第二章:

1.C#运算符
1)赋值=
2)逻辑&& || !
3)关系> < == >= <= != 
4)算术+ - * / % ++ --
5)条件 ? :  
6)复合(赋值) +=  -= *=  sum=sum+i;  sum+=i;
 
2.C#分支结构
1)基本:if(){}else{}
2)嵌套:if(){if(){}else{}}else{if(){}else{}}
3)多重:if(){}else if(){}else if(){}....else{}
4)switch:
switch(表达式intar/string)

{
case 常量:
语句;
break;
......
default:
语句;
break; }

3.循环结构:
1)while(){}

2)do{}while();

3)for(表达1;表达2;表达3){}

4)foreach(数据类型 变量名 in 数组/集合){}

4.数组:

)int  []a; a=new int[];
)int []a={,};
int []a=new int[]{,};
int []a=new int[]{,};
)int []a=new int[];

5.冒泡排序
外层:N-1
里层:N-1-i

int []a={,,,,};
for(int i=; i<a.length-; i++)//轮
{
for(int j=;j<a.length--i; j++)//每轮比较的次数
{
//比较交换
if(a[j]>a[j+])
{
int temp=a[j];
a[j]=a[j+];
a[j+]=temp;
}
}
}

示例:  int [] nums = {5,9,8,6,89};  使用冒泡排序,一共会比较几次?  10次

 
 
第三章:
1. 访问修饰符: 
   private 能有类的内部可以使用, 访问级别是最低的。  public 
1.值类型和引用类型作为方法的参数进行传递的特点
值传递:形变实不变
引用传递:形变实也变(string 除外)

第四章:
1.string类方法 

string s="hello hello"; string s1="how are you";
)SubString() s.SubString(,) s.SubString();
)IndexOf() s.IndexOf('e') s.IndexOf("ll");
)LastIndexOf()
)Join() string str=string.Join("**",arr);how**are**you
)Equals()
)ToLower()
)ToUpper()
)Trim()
)Split() string[]arr=s1.Split(' ');
)Compare() int r=string.Compare(s,s1);(/-/)
)Format() string s=string.Fromat("格式字符串",参数列表);

2.数据类型转换

1.string--->值 xxx.Parse(); 注意 Parse里面的值一定是一个字符串类型,
并且是能够正确转换为对应的数值的类型。 比如: int a = int.Parse("1.5"); 运行时出错
值---->string toString();

2.值----值
显示转换:int a=(int)5.6;
隐式转换:double d=10;

3.任---任
XXX c=Convert.ToXXX(变量);

***************************************************************************
************************** 数据库部分 *************************
***************************************************************************

基本的增删改查语法
-------------------------
1.插入语法结构
1)单行插入
insert into 表名(列名)
values (值)

2)使用union多行插入
insert into 表名(列名)
select 值 union
select 值 .....
select 值

3)新表不存在
select 旧表列名
into 新表名
from 旧表名

4)新表存在
insert into 新表名
select 旧表列名
from 旧表名

2.删除
delete from 表名 where 条件
truncate table 表名

3.修改
update 表名 set 列名=新值 where 条件

4.查询
select 列名
from 表名
where 条件
group by 分组列名
having 筛选条件
order by 排序列名 desc

数据库连接部分
---------------------

数据库连接步骤:

一、创建DBHelper类

1.创建连接字符串

static string conStr=@"server=.;database=myschool;uid=sa;pwd=sa;";
private static SqlConnection con;
public static SqlConnection Con
{
get
{
if(con==null)
{
con=new SqlConnection(conStr);
con.Open();
}
else if(con.State==System.Data.ConnectionSate.Closed)
{
con.Open();
}
return con;
}
}

二、方法

1.ADO.NET的两个重要组件
.NET Framework数据提供程序
DataSet数据集

2..NET Framework数据提供程序的4个核心对象
Connection:连接数据库
Command:执行命令(SQL语句)
DataReader:读取数据源中的数据
DataAdapter

1.构建SQL语句
string sql=string.Fromat("",);

2.创建Command对象
SqlCommand cmd=new SqlCmmand(sql,DBHelper.Con);

3.调用方法
1)查询单个值:xxx c=Convert.Toxxx(cmd.ExecuteScalar());
2)insert/update/delete:int r=cmd.ExecuteNonQuery();
3)查询大量数据:
SqlDataReader sdr=cmd.ExecuteReader();
while(sdr.Read())
{
sdr["列名"];
sdr[0]
}
sdr.Close();

4.关闭数据库连接
DBHelper.Con.Close();

5. 异常处理
try{} catch(){} fianly{}

来自作者:http://bbs.ichunqiu.com/thread-7131-1-1.html 的分享

C#基础笔记的更多相关文章

  1. Java基础笔记 – Annotation注解的介绍和使用 自定义注解

    Java基础笔记 – Annotation注解的介绍和使用 自定义注解 本文由arthinking发表于5年前 | Java基础 | 评论数 7 |  被围观 25,969 views+ 1.Anno ...

  2. php代码审计基础笔记

    出处: 九零SEC连接:http://forum.90sec.org/forum.php?mod=viewthread&tid=8059 --------------------------- ...

  3. MYSQL基础笔记(六)- 数据类型一

    数据类型(列类型) 所谓数据烈性,就是对数据进行统一的分类.从系统角度出发时为了能够使用统一的方式进行管理,更好的利用有限的空间. SQL中讲数据类型分成三大类:1.数值类型,2.字符串类型和时间日期 ...

  4. MYSQL基础笔记(五)- 练习作业:站点统计练习

    作业:站点统计 1.将用户的访问信息记录到文件中,独占一行,记录IP地址 <?php //站点统计 header('Content-type:text/html;charset=utf-8'); ...

  5. MYSQL基础笔记(四)-数据基本操作

    数据操作 新增数据:两种方案. 1.方案一,给全表字段插入数据,不需要指定字段列表,要求数据的值出现的顺序必须与表中设计的字段出现的顺序一致.凡是非数值数据,到需要使用引号(建议使用单引号)包裹. i ...

  6. MYSQL基础笔记(三)-表操作基础

    数据表的操作 表与字段是密不可分的. 新增数据表 Create table [if not exists] 表名( 字段名 数据类型, 字段名 数据类型, 字段n 数据类型 --最后一行不需要加逗号 ...

  7. MYSQL基础笔记(二)-SQL基本操作

    SQL基本操作 基本操作:CRUD,增删改查 将SQL的基本操作根据操作对象进行分类: 1.库操作 2.表操作 3.数据操作 库操作: 对数据库的增删改查 新增数据库: 基本语法: Create da ...

  8. MYSQL基础笔记(一)

    关系型数据库概念: 1.什么是关系型数据库? 关系型数据库:是一种建立在关系模型(数学模型)上的数据库 关系模型:一种所谓建立在关系上的模型. 关系模型包含三个方面: 1.数据结构:数据存储的问题,二 ...

  9. JavaScript基础笔记二

    一.函数返回值1.什么是函数返回值    函数的执行结果2. 可以没有return // 没有return或者return后面为空则会返回undefined3.一个函数应该只返回一种类型的值 二.可变 ...

  10. JavaScript基础笔记一

    一.真假判断 真的:true.非零数字.非空字符串.非空对象 假的:false.数字零.空字符串.空对象.undefined 例: if(0){ alert(1) }else{ alert(2) } ...

随机推荐

  1. hive上传下载数据

    ------------------------------------------read me--方式1:适用于工具传输--方式2:适用于手动临时性传输---------------------- ...

  2. 为什么text的值改变后onchange没有反应?

    onchange发生在元素失去焦点后,而不是想象中的元素的值发生改变的时候.其实它的作用就跟onblur(失去焦点事件)差不多,只不过onchange是失去焦点且值发生了改变.要想实现目的,可以改用o ...

  3. C#使用CefSharp开源库开发Chrome 浏览器

    一.介绍        这个东西我以前没有接触过,但是公司项目里面有用到这个东西,所以就顺便研究一下.今天只是做了 WinForm 的测试,有时间了在试试 WPF 是如何实现的.刚开始一塌糊涂,有点麻 ...

  4. java 得到项目路径

    JavaEXTTomcatJSPWeb 一 相对路径的获得  说明:相对路径(即不写明时候到底相对谁)均可通过以下方式获得(不论是一般的java项目还是web项目)  String relativel ...

  5. 重启rabbitmq服务

    重启rabbitmq服务通过两个命令来实现: rabbitmqctl stop :停止rabbitmq rabbitmq-server restart : 重启rabbitmq 因为rabbitmqc ...

  6. python数据结构(二)------元组

    元组是不可变序列,因此,元组的操作非常简单,本文就简单介绍一下,并解释下元组存在的意义: 2.2.1 元组的创建 2.2.2 tuple函数 2.2.3 基本元组操作 2.2.4 元组存在的意义 2. ...

  7. 关于微信小程序切换获取不到元素的问题

    1.由于公司要实现微信小程序的自动化,所以开始学习python + appium 实现微信小程序自动化.在学习过程中遇到在切换webview后获取不到页面元素的问题,导致无法继续.今天在网上看到一篇关 ...

  8. ACM(图论)——tarjan算法详解

    ---恢复内容开始--- tarjan算法介绍: 一种由Robert Tarjan提出的求解有向图强连通分量的线性时间的算法.通过变形,其亦可以求解无向图问题 桥: 割点: 连通分量: 适用问题: 求 ...

  9. 数组,arrayList和List

    数组,arrayList和List (1)数组在C#中是最早出现的.它在内存中是连续的存储的,所以索引速度很快,而且赋值与修改元素也很简单.可以利用偏移地址访问元素,时间复杂度为O(1);可以用折半查 ...

  10. 接口约束的另一种方法:Class类的isAssignableFrom

    Class类的isAssignableFrom是个不常用的方法,感觉这个方法的名字取得不是很好,所以有必要在此解析一下,以免在看源码时产生歧义,这个方法的签名如下: public native boo ...