1. 控制台操作基础
控制台程序是学习C#的起点。以下是一些常用的控制台操作方法:
1.1. 清除控制台
Console.Clear(); // 清除控制台内容
1.2. 输出字符串
Console.WriteLine("Hello World!"); // 在屏幕的当前位置换行输出字符串
Console.Write("hello"); // 在屏幕的当前位置输出字符串,不换行
Console
是控制台类,WriteLine
是方法,"Hello World!"
是参数。
1.3. 输入数据
Console.ReadLine();//等待用户输入一行数据,直到回车为止
string s = Console.ReadLine(); //string获取返回值,console是类,readline是方法;
1.4. 等待按键输入
Console.ReadKey(); //暂停当前程序,等待用户按下任意键继续,按下的任意键将显示在控制台当中
1.5. 让计算机发出蜂鸣声
Console.Beep();//让计算机发出蜂鸣声
Console.Beep(200,1000);//是指定频率、持续时长(毫秒)
1.6. 设置光标位置
Console.SetCursorPosition(5, 10); // 设置光标的坐标,横坐标为5,纵坐标为10
1.7. 设置前景色和背景色
Console.ForegroundColor = ConsoleColor.Red; // 设置前景颜色为红色
Console.BackgroundColor = ConsoleColor.Gray; // 设置背景颜色为灰色
Console.ResetColor(); //设置成默认颜色
1.8. 设置控制台标题
Console.Title = "Hello"; // 设置控制台标题
1.9. 程序暂停
System.Threading.Thread.Sleep(3000); // 程序暂停3000毫秒(3秒)
2. 字符串与转义字符
在C#中,字符串可以包含转义字符,例如
\n
:表示换行,\r\n
表示windows系统换行\"
:表示一个英文半角的双引号\t
:表示制表符tab键。\b
:表示一个退格键backspace,删除前面一个字符\\
: 表示一个\- 如果不想让
\
具有转义作用,可以使用@
符号:
Console.WriteLine(@"C:\aa\bb\c.txt"); // @符号表示后面的\不具有转义作用
3. 数据类型转换
C#提供了丰富的数据类型转换方法,例如:
char ch1 = 'a'; // char类型有且只有一个字符
Console.WriteLine("int最大值: " + int.MaxValue); // 输出int的最大值
Console.WriteLine("int最小值: " + int.MinValue); // 输出int的最小值
int i = 9;
string s = Convert.ToString(i); // 将int转换为string
string j = "123";
int k = Convert.ToInt32(j); // 将string转换为int
4. 枚举的使用
枚举是一种特殊的数据类型,用于定义一组命名的常量。例如:
enum Dir // 声明枚举类型
{
East, West, South, North
}
Dir d = Dir.West; // 在main()方法中调用枚举
Console.WriteLine(d); // 输出:West
5. 字符串拼接与运算符优先级
在C#中,字符串拼接使用+
符号。需要注意的是,运算符的优先级会影响输出结果:
Console.WriteLine(5 + 5 + "hello"); // 输出:10hello
Console.WriteLine("hello" + (5 + 5)); // 输出:hello10
Console.WriteLine("hello" + 5 + 5); // 输出:hello55
6. 自增与自减运算符
自增(++
)和自减(--
)运算符在C#中非常常用。它们的使用方式如下:
int i = 10;
Console.WriteLine(i++); // 输出:10,然后i加1
Console.WriteLine(++i); // 先将i加1,然后输出:12
7. 循环语句
循环语句是编程中常用的控制结构。以下是一个for
循环的示例:
for (int i = 1; i < 4; i++) // 初始化表达式(只执行一次);循环条件表达式;循环后的操作表达式
{
Console.WriteLine("hello world");
}
8. 时间与日期
C#提供了强大的日期和时间处理功能。以下是如何获取当前时间的示例:
Console.WriteLine(DateTime.Now); // 输出当前时间
9. 数组的使用
数组是存储多个相同类型数据的集合。以下是一些数组操作的示例:
int[] a1 = new int[5]; // 定义一个长度为5的数组
a1[0] = 3; // 往数组指定位置放数据, 没有数据则补0
a1[1] = 8;
a1[2] = 5;
a1[3] = 99;
a1[4] = 33;
int i = a1[3]; // 从数组指定位置取数据
Console.WriteLine(i); // 输出:99
int[] a2 = { 3, 5, 2 }; // 初始化数组
Console.WriteLine(a2[1]); // 输出:5
a2[1] = 333;
Console.WriteLine(a2[1]); // 输出:333
10. 条件语句
条件语句用于根据条件执行不同的代码块。以下是一个简单的if
语句示例:
char c = 'a';
if (!char.IsDigit(c)) // 判断char是否是十进制数字
{
Console.WriteLine("不能包含有字符");
return;//退出当前函数(方法)
}
11. 消息框的使用
在Windows应用程序中,可以使用MessageBox
显示消息框:
MessageBox.Show(int.MaxValue.ToString()); // 显示int的最大值,int的最大值为2147483647(10位)
12. 接口的使用
接口是一种定义方法和属性的契约,实现接口的类必须实现接口中定义的所有方法。以下是一个接口的示例:
interface ISpeakable
{
void Speak();
}
13. 数据库操作
C#提供了强大的数据库操作功能,通过System.Data
和System.Data.SqlClient
命名空间可以方便地操作数据库:
using System.Data; // 包含DataTable、DataSet、DataRow等
using System.Data.SqlClient; // 用于操作ADO.NET