教程C#例子学习

using System;
using System.Text;
using System.Collections;
using System.Collections.Generic;

namespace StringApplication
{
    class Program
    {
        static void Main(string[] args)
        {
            string fname, lname;
            fname = "RoWan";
            lname = "Atkinson";

            string fullname = fname + lname;
            Console.WriteLine("Full Name: {0}", fullname);

            char[] letters = { 'H', 'e', 'l', 'l', 'o' };
            // 通过使用string进行构建
            string greetings = new string(letters);
            // 这边{0}表示一个占位符, 表示这边需要插入一个变量的值
            Console.WriteLine("Greetings: {0},{1}", greetings, 12);

            // 定义一个string类型的数组
            string[] sarray = { "Hello", "From", "Tutorials", "Point" };
            IEnumerable<string> ienum = sarray;
            // string.join()函数通过某种方式进行叠加
            string message = Join(" ", ienum);
            // 方法二
            message = String.Join(" ", ienum);
            Console.WriteLine("Message: {0}", message);

            DateTime waiting = new DateTime(2023, 4, 24, 10, 14, 58);
            string chat = String.Format("Message sent at {0:t} on {0:D}", waiting);
            Console.WriteLine("Message: {0}", chat);
            Console.ReadKey();

        }

        public static string Join(string separator, IEnumerable<string> values)
        {
            // 如果传递的值为空,则返回空字符串
            if (values == null)
                return string.Empty;

            // 如果分隔符为空,则使用空字符串作为默认分隔符
            if (separator == null)
                separator = string.Empty;

            // 创建一个 StringBuilder 对象,用于构建最终的字符串
            // var是一个关键字,可以在编译时通过右侧表达式类型来推断变量类型,与auto一样
            var sb = new StringBuilder();

            // 遍历值集合中的每个元素
            bool isFirst = true;
            foreach (var value in values)
            {
                // 如果这不是第一个元素,则在值之前添加分隔符
                if (!isFirst)
                    sb.Append(separator);

                // 添加当前值到 StringBuilder 对象中
                sb.Append(value);

                // 将 isFirst 设置为 false,以便下一个元素之前添加分隔符
                isFirst = false;
            }

            // 返回最终构建的字符串
            return sb.ToString();
        }

    }
}

string例子总结

  1. char->string的方式是使用构造函数的方式就可以转换了
  2. {0}表示是一个占位符,具体类型可以多样化
  3. sting.join()函数的使用和代码实现
  4. stringBuilder这个类可以构建动态的字符串,方便管理,好东西
using System;
using System.Text;

// 值类型,不支持继承,不能声明默认的构造函数
struct Books
{
    public string title;
    public string author;
    public string subject;
    public int book_id;
}


public class testStructure
{
    public static void Main(string[] args)
    {
        Books m_vBook1;
        Books m_vBook2;

        // 必须对所有字段进行初始化后对象才能使用
        m_vBook1.title = "C_Programming";
        m_vBook1.author = "Naha Ali";
        m_vBook1.subject = "C Programming Tutorial";
        m_vBook1.book_id = 6495407;

        m_vBook2.title = "Telecom Billing";
        m_vBook2.author = "Zara Ali";
        m_vBook2.subject = "Telecom Billing Tutorial";
        m_vBook2.book_id = 6495700;

        Console.WriteLine("Book 1 title : {0}", m_vBook1.title);
        Console.WriteLine("Book 1 author : {0}", m_vBook1.author);
        Console.WriteLine("Book 1 subject : {0}", m_vBook1.subject);
        Console.WriteLine("Book 1 book_id :{0}", m_vBook1.book_id);

        /* 打印 Book2 信息 */
        Console.WriteLine("Book 2 title : {0}", m_vBook2.title);
        Console.WriteLine("Book 2 author : {0}", m_vBook2.author);
        Console.WriteLine("Book 2 subject : {0}", m_vBook2.subject);
        Console.WriteLine("Book 2 book_id : {0}", m_vBook2.book_id);

        Console.ReadKey();
    }
}

结构体例子总结

  1. struct结构如果没有被new时,只有在所有字段都被初始化之后才能够使用
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值