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(表达式int
ar/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) } ...
随机推荐
- 关于vue中tamplate和DOM节点浅谈
前言:在开发前段页面使用vue时,我们能经常看到template标签.这里粗略讲下自己对vue中template理解和使用. 1. 先了解vue vue.js是一个轻巧.高性能.壳组件画的MVVM库. ...
- java_25 FileReader类和FileWriter类
1.FileWriter 1.1FileWriter 用于写入字符流.要写入原始字节流,请考虑使用 FileOutputStream. public class Demo { public stati ...
- angular 遍历foreach
1.angular遍历angular.forEach(groups,function (group) { })
- python词频统计及其效能分析
1) 博客开头给出自己的基本信息,格式建议如下: 学号2017****7128 姓名:肖文秀 词频统计及其效能分析仓库:https://gitee.com/aichenxi/word_frequenc ...
- java8--List转为Map、分组、过滤、求和等操作----代码示例
Java 8 函数式编程风格 Java 迄今为止最令人激动的特征.这些新的语言特征允许采用函数式风格来进行编码,我们可以用这些特性完成许多有趣的功能.这些特性如此有趣以至于被认为是不合理的.他们说会影 ...
- [原]Webpack 3 + AngularJS1.* + Bootstrap 4 + Mapbox-gl
直接上步骤 一.创建项目 1. 使用VSCode建立项目目录结构如下: 文档结构 wabg ├── http │ ├── app.js │ ├── controllers │ │ └── index. ...
- Linux静态设置CentOS 7虚拟机的IP
进入root ,输入命令:# vi /etc/sysconfig/network-scripts/ifcfg-ens33 .将DHCP协议获取IP,改为static静态,加上想要设置的IPADDR即可 ...
- angular 键盘事件绑定与过滤
方便的angular按钮绑定 如 <input (keyup.enter)="keyUpSearch($event)" value="按下回车键触发"&g ...
- CSS定位网页中的元素
relative相对定位 偏移设置:left.right.top.bottom 值单位:px 元素的规律: 相对定位元素的规律 设置相对定位的盒子会相对它原来的位置通过指定偏移,到达新的位置. 设置相 ...
- vue中提示$index is not defined
今天学习Vue中遇到了一个报错信息:$index is not defined,是我写了个for循环在HTML中,然后是因为版本的问题 下面是解决方法: 原来的是 v-for="person ...