C#基础笔记
第一章:
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();
C#中有三种注释, 分别是单行: // 多行 /* */ 文档 ///
9. 调试: F9设置断点 F5启动调试
第二章:
1)赋值=
2)逻辑&& || !
3)关系> < == >= <= !=
4)算术+ - * / % ++ --
5)条件 ? :
6)复合(赋值) += -= *= sum=sum+i; sum+=i;
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次
private 能有类的内部可以使用, 访问级别是最低的。 public
值传递:形变实不变
引用传递:形变实也变(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{}
C#基础笔记的更多相关文章
- Java基础笔记 – Annotation注解的介绍和使用 自定义注解
Java基础笔记 – Annotation注解的介绍和使用 自定义注解 本文由arthinking发表于5年前 | Java基础 | 评论数 7 | 被围观 25,969 views+ 1.Anno ...
- php代码审计基础笔记
出处: 九零SEC连接:http://forum.90sec.org/forum.php?mod=viewthread&tid=8059 --------------------------- ...
- MYSQL基础笔记(六)- 数据类型一
数据类型(列类型) 所谓数据烈性,就是对数据进行统一的分类.从系统角度出发时为了能够使用统一的方式进行管理,更好的利用有限的空间. SQL中讲数据类型分成三大类:1.数值类型,2.字符串类型和时间日期 ...
- MYSQL基础笔记(五)- 练习作业:站点统计练习
作业:站点统计 1.将用户的访问信息记录到文件中,独占一行,记录IP地址 <?php //站点统计 header('Content-type:text/html;charset=utf-8'); ...
- MYSQL基础笔记(四)-数据基本操作
数据操作 新增数据:两种方案. 1.方案一,给全表字段插入数据,不需要指定字段列表,要求数据的值出现的顺序必须与表中设计的字段出现的顺序一致.凡是非数值数据,到需要使用引号(建议使用单引号)包裹. i ...
- MYSQL基础笔记(三)-表操作基础
数据表的操作 表与字段是密不可分的. 新增数据表 Create table [if not exists] 表名( 字段名 数据类型, 字段名 数据类型, 字段n 数据类型 --最后一行不需要加逗号 ...
- MYSQL基础笔记(二)-SQL基本操作
SQL基本操作 基本操作:CRUD,增删改查 将SQL的基本操作根据操作对象进行分类: 1.库操作 2.表操作 3.数据操作 库操作: 对数据库的增删改查 新增数据库: 基本语法: Create da ...
- MYSQL基础笔记(一)
关系型数据库概念: 1.什么是关系型数据库? 关系型数据库:是一种建立在关系模型(数学模型)上的数据库 关系模型:一种所谓建立在关系上的模型. 关系模型包含三个方面: 1.数据结构:数据存储的问题,二 ...
- JavaScript基础笔记二
一.函数返回值1.什么是函数返回值 函数的执行结果2. 可以没有return // 没有return或者return后面为空则会返回undefined3.一个函数应该只返回一种类型的值 二.可变 ...
- JavaScript基础笔记一
一.真假判断 真的:true.非零数字.非空字符串.非空对象 假的:false.数字零.空字符串.空对象.undefined 例: if(0){ alert(1) }else{ alert(2) } ...
随机推荐
- ABAP开发相关事务代码
事务代码 事务描述 事务代码 事务描述 SE37 ABAP/4函数编辑器 BAPI BAPI 浏览器 SE38 ABAP编辑器 LSMW 数据导入工具 SE39 ABAP分屏编辑器 PFCG 权限管理 ...
- java 调用存储过程
1.java 中调用pl/sql 中的存储过程 call 存储过程的名称(参数名称,参数名称) 在service 层中调用 存储过程 String sql=" call proc_ ...
- 怎么把微信里的文件发到QQ?
对于如何将微信里的文件发到QQ这个问题,首先要看是在手机中操作还是在电脑上操作,针对不同的发送方式逐一介绍如下: 一.从手机微信发送文件到QQ 1.在手机微信中找到需要发送的文件打开,点击右上角竖排的 ...
- python基础之Day22
1.组合 什么是? 一个类的对象具备某一个属性,该属性值属于另一个类的对象,这样就可以引用 为何用: 解决类与类之间代码冗余问题 如何用? 2.菱形继承 单继承:一个个往父类上查找 菱形:一个子类继承 ...
- SpringBoot对注册用户密码进行Bcrypt密码加密
一.注册用户时,用户的密码一般都是加密存储在数据库中.今天我要用到的加密方式是Bcrypt加密. 1.首先在SpringBoot项目的pom文件中,引入SpringSecurity相关依赖,目的是为了 ...
- C++ vector动态数组
#include<vector>头文件 vector类称作向量类 百度百科的解释:https://baike.baidu.com/item/vector/3330482 我喜欢把知识点拿出 ...
- Spring Beans和依赖注入
您可以自由地使用任何标准的Spring框架技术来定义您的bean及其注入的依赖项.为简单起见,我们经常发现使用@ComponentScan(找到您的bean)和使用@Autowired(做构造函数注入 ...
- H5新特性---SVG--椭圆--直线--文本--滤镜(高斯滤镜--模糊)--地理定位
今天的目标 3.1:h5新特性--SVG--椭圆 <ellipse rx="" ry="" cx="" cy="" ...
- Pyinstaller打包django
偶有特殊要求可能需要将django程序打包成exe可执行文件,方便在电脑直接点击运行.这里用的是打包python代码的常用库Pyinstaller. 虽然用Pyinstaller支持打包Django, ...
- du
du -ah --max-depth=1 这个是我想要的结果 a表示显示目录下所有的文件和文件夹(不含子目录),h表示以人类能看懂的方式,max-depth表示目录的深度.