吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 3282|回复: 12
收起左侧

[其他转载] C# 的各语句,并提供每个语句的示例!

  [复制链接]
Cool_Breeze 发表于 2021-2-25 10:44
本帖最后由 Cool_Breeze 于 2021-2-25 11:18 编辑

[C#] 纯文本查看 复制代码
// 局部变量声明
static void Main() {
    int a;
    int b = 2, c = 3;
    a = 1;
    Console.WriteLine(a + b + c);
}
// 局部常量声明
static void Main() {
    const float pi = 3.1415927f;
    const int r = 25;
    Console.WriteLine(pi * r * r);
}
// 表达式语句
static void Main() {
    int i;
    i = 123; // Expression statement
    Console.WriteLine(i);  // Expression statement
    i++; // Expression statement
    Console.WriteLine(i);  // Expression statement
}
// if 语句
static void Main(string[] args) {
    if (args.Length == 0) {
        Console.WriteLine("No arguments");
    }
    else {
        Console.WriteLine("One or more arguments");
    }
}
// switch 语句
static void Main(string[] args) {
    int n = args.Length;
    switch (n) {
        case 0:
            Console.WriteLine("No arguments");
            break;
        case 1:
            Console.WriteLine("One argument");
            break;
        default:
            Console.WriteLine("{0} arguments", n);
            break;
    }
}
// while 语句
static void Main(string[] args) {
    int i = 0;
    while (i < args.Length) {
        Console.WriteLine(args[i]);
        i++;
    }
}
// do 语句
static void Main() {
    string s;
    do {
        s = Console.ReadLine();
        if (s != null) Console.WriteLine(s);
    } while (s != null);
}
// for 语句
static void Main(string[] args) {
    for (int i = 0; i < args.Length; i++) {
        Console.WriteLine(args[i]);
    }
}
// foreach 语句
static void Main(string[] args) {
    foreach (string s in args) {
        Console.WriteLine(s);
    }
}
// break 语句
static void Main() {
    while (true) {
        string s = Console.ReadLine();
        if (s == null) break;
        Console.WriteLine(s);
    }
}
// continue 语句
static void Main(string[] args) {
    for (int i = 0; i < args.Length; i++) {
        if (args[i].StartsWith("/")) continue;
        Console.WriteLine(args[i]);
    }
}
// goto 语句
static void Main(string[] args) {
    int i = 0;
    goto check;
    loop:
        Console.WriteLine(args[i++]);
    check:
        if (i < args.Length) goto loop;
}
// return 语句
static int Add(int a, int b) {
    return a + b;
}
static void Main() {
    Console.WriteLine(Add(1, 2));
    return;
}
// yield 语句
static IEnumerable<int> Range(int from, int to) {
    for (int i = from; i < to; i++) {
        yield return i;
    }
    yield break;
}
static void Main() {
    foreach (int x in Range(-10,10)) {
        Console.WriteLine(x);
    }
}
// throw 和 try 语句
static double Divide(double x, double y) {
    if (y == 0) throw new DivideByZeroException();
    return x / y;
}
static void Main(string[] args) {
    try {
        if (args.Length != 2) {
            throw new Exception("Two numbers required");
        }
        double x = double.Parse(args[0]);
        double y = double.Parse(args[1]);
        Console.WriteLine(Divide(x, y));
    }
    catch (Exception e) {
        Console.WriteLine(e.Message);
    }
    finally {
        Console.WriteLine(“Good bye!”);
    }
}
// checked 和 unchecked 语句
static void Main() {
    int i = int.MaxValue;
    checked {
        Console.WriteLine(i + 1); // Exception
    }
    unchecked {
        Console.WriteLine(i + 1); // Overflow
    }
}
// lock 语句
class Account
{
    decimal balance;
    public void Withdraw(decimal amount) {
        lock (this) {
            if (amount > balance) {
                throw new Exception("Insufficient funds");
            }
            balance -= amount;
        }
    }
}
// using 语句
static void Main() {
    using (TextWriter w = File.CreateText("test.txt")) {
        w.WriteLine("Line one");
        w.WriteLine("Line two");
        w.WriteLine("Line three");
    }
}

免费评分

参与人数 7吾爱币 +4 热心值 +7 收起 理由
ipc2008 + 1 + 1 谢谢@Thanks!
迷恋自留地 + 1 我很赞同!
lene + 1 + 1 用心讨论,共获提升!
脱俗小子 + 1 谢谢@Thanks!
wangdao + 1 + 1 谢谢@Thanks!
gezhu + 1 + 1 我很赞同!
水表 + 1 谢谢@Thanks!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

 楼主| Cool_Breeze 发表于 2021-2-25 20:40
本帖最后由 Cool_Breeze 于 2021-2-25 20:58 编辑

学习笔记!
[C#] 纯文本查看 复制代码
using System;
using System.Collections;


namespace Girl
{
    // 抽象类
    public abstract class Animal
    {
        // 虚拟方法 子类中使用 override 重写父类方法
        public virtual void Cry(){
            Console.WriteLine("你听,动物在叫。。。");
        }
        // 未实现的虚拟方法 子类中使用 override 重写父类方法
        // 未实现的虚拟方法(抽象方法)必须写在抽象类里面
        public abstract void Eat();
    }
    
    // 继承自 Animal
    class Cat: Animal
    {
        // 使用 override 重写父类方法
        public override void Cry(){
            Console.WriteLine("你听,小猫在叫。。。");
        }
        // 使用 override 重写父类方法
        public override void Eat()
        {
            Console.WriteLine("你看,小猫在吃小鱼干。。。");
        }
    }
    
    // 继承自 Animal
    class Dog: Animal
    {
        // 使用 override 重写父类方法
        public override void Cry(){
            Console.WriteLine("你听,小狗在叫。。。");
        }
        // 使用 override 重写父类方法
        public override void Eat(){
            Console.WriteLine("你看,哦!小狗正在使劲舔,是吃不到吗!");
        }
    }
    
    class Pragma
    {
        static void Main(){
            // 注意 抽象类不能被实体化,new 子类就好了!
            // Animal 是Cat的基类,都可以申明变量
            Cat cat = new Cat();
            Animal dog = new Dog();
            cat.Cry();
            dog.Cry();
            cat.Eat();
            dog.Eat();
            Mans hua = new Mans("小明", "华子");
            hua.Man();
            hua.Women();
            Console.ReadLine();
            // 你听,小猫在叫。。。
            // 你听,小狗在叫。。。
            // 你看,小猫在吃小鱼干。。。
            // 你看,哦!小狗正在使劲舔,是吃不到吗!
            // 小明 和 华子 去了男厕所
            // 小明 和 华子 去了女厕所
        }
    }
    
    // 接口 声明
    public interface IWc
    {
        // 去厕所干嘛咱也不知道啊!
        // 女厕所
        void Women();
        // 男厕所
        void Man();
    }
    
    public class Mans: IWc
    {
        // 只读变量
        public readonly string sexm = "男厕所";
        public readonly string sexw = "女厕所";
        
        // 私有变量
        private string namea = string.Empty;
        private string nameb = string.Empty;
        
        // 构造函数
        public Mans(string a, string b){
            this.namea = a;
            this.nameb = b;
        }
        
        // 直接重写方法就行
        // 基接口的2个接口必须重写,不然无法编译
        public void Man(){
            Console.WriteLine("{0} 和 {1} 去了{2}", namea, nameb, sexm);
        }
        public void Women(){
            Console.WriteLine("{0} 和 {1} 去了{2}", namea, nameb, sexw);
        }
    }
}
列明 发表于 2021-2-25 11:57
提個建議:
在輸出語句下一行用註釋的形式提供一下輸出語句的輸出內容,
這樣學起來更直觀。
水表 发表于 2021-2-25 10:49
 楼主| Cool_Breeze 发表于 2021-2-25 11:17
水表 发表于 2021-2-25 10:49
收藏了  刚好在学习

恩, 我也在学习中!
头像被屏蔽
gezhu 发表于 2021-2-25 11:22
提示: 作者被禁止或删除 内容自动屏蔽
头像被屏蔽
Bell520vae 发表于 2021-2-25 11:50
提示: 作者被禁止或删除 内容自动屏蔽
中二的绅士 发表于 2021-2-25 12:02
好东西啊
野兽的影子 发表于 2021-2-25 12:34
快忘得差不多了,曾经大学就是学的.NET    C#
zhanglei1371 发表于 2021-2-25 12:38
应该讲一下具体使用情景
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-25 16:51

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表