当前位置: 首页 > news >正文

【从零开始入门unity游戏开发之——C#篇05】转义字符、@处理多行文本或者不使用转义字符、随机数

文章目录

  • 一、转义字符
    • 1、什么是转义字符?
    • 2、常见的转义字符
    • 3、总结
  • 二、使用@处理多行文本或者不使用转义字符
    • 1、多行字符串
    • 2、不使用转义字符
  • 三、随机数
    • 1、`Random.Next()`生成随机整数
      • 示例:生成一个随机整数
      • 生成指定范围内的随机整数
    • 2、`Random.NextSingle`生成随机浮点数
      • 示例:生成随机浮点数
    • 3、 生成随机字母或字符
      • 示例:生成随机字母
      • 示例:生成随机小写字母
  • 专栏推荐
  • 完结

一、转义字符

C# 的 转义字符 是一个非常重要的概念,特别是当你在处理字符串时。转义字符可以让你在字符串中插入一些特殊的字符或符号,这些字符通常不能直接在字符串中使用,或者可能会与程序语法产生冲突。

1、什么是转义字符?

在 C# 中,转义字符是一个以反斜杠(\)开头的特殊字符,它告诉编译器后面跟着的是一个特殊符号或者不常见的字符。例如,\n 表示换行符,\t 表示制表符(Tab)。

2、常见的转义字符

  1. \n - 换行符

    • 在字符串中插入一个换行符,相当于按下“Enter”键。
    • 例子:
      string text = "Hello\nWorld";
      Console.WriteLine(text);
      
      输出:
      Hello
      World
      
  2. \t - 制表符(Tab)

    • 插入一个制表符,相当于按下 Tab 键,会在文本中插入一定的空白区域。
    • 例子:
      string text = "Hello\tWorld";
      Console.WriteLine(text);
      
      输出:
      Hello   World
      
  3. \\ - 反斜杠

    • 如果你需要在字符串中表示反斜杠(\),你需要使用两个反斜杠(\\)来转义。
    • 例子:
      string path = "C:\\Users\\John\\Documents";
      Console.WriteLine(path);
      
      输出:
      C:\Users\John\Documents
      
  4. \' - 单引号

    • 在字符串中插入一个单引号字符(')。如果不使用转义字符,单引号会和字符串的界定符产生冲突。
    • 例子:
      string quote = "It's a beautiful day!";
      Console.WriteLine(quote);
      
      输出:
      It's a beautiful day!
      
  5. \" - 双引号

    • 在字符串中插入一个双引号字符(")。如果不使用转义字符,双引号会与字符串的开始和结束界定符冲突。
    • 例子:
      string quote = "She said, \"Hello!\"";
      Console.WriteLine(quote);
      
      输出:
      She said, "Hello!"
      

3、总结

  • 转义字符用于在字符串中插入特殊字符。
  • 通过在字符前加 \,可以表示特殊字符(如换行符、制表符、引号等)。
  • 常见的转义字符有:\n\t\\\'\"\r 等。
  • 对于需要多行文本或不想使用转义字符的场景,可以使用逐字字符串(@)。

希望这些解释对你有帮助!如果你有更多问题,随时可以问我!


二、使用@处理多行文本或者不使用转义字符

如果你想在字符串中包含多行文本或者不想使用转义字符,你可以使用 C# 中的 逐字字符串(verbatim string),通过在字符串前加上 @ 符号。

1、多行字符串

string multiline = @"
Hello, this is a multi-line string.
You can have newlines and tabs without escaping them.
For example:
- Line 1
- Line 2
";
Console.WriteLine(multiline);

输出:

在这里插入图片描述

2、不使用转义字符

string path = @"C:\Prog\nram Fi\rles\App";
Console.WriteLine(path);

输出:
在这里插入图片描述

逐字字符串中的反斜杠 \ 不需要转义,它们会被直接解释为字符。


三、随机数

在 C# 中,生成随机数通常使用 Random 类。Random 类提供了一些方法来生成不同类型的随机数,比如整数、浮点数等。

特点:左包含,右不包含

1、Random.Next()生成随机整数

要生成随机整数,可以使用 Random 类的 Next() 方法。

示例:生成一个随机整数

Random random = new Random();
int randomNumber = random.Next(); // 生成一个非负整数
Console.WriteLine(randomNumber);

生成指定范围内的随机整数

可以通过 Next(int minValue, int maxValue) 方法指定生成随机数的范围。minValue 是随机数的最小值(包含),maxValue 是随机数的最大值(不包含)。

Random random = new Random();
int randomInRange = random.Next(1, 100); // 生成 1 到 99 之间的随机整数
Console.WriteLine(randomInRange);

2、Random.NextSingle生成随机浮点数

如果需要生成随机的浮点数,可以使用 NextSingle() 方法,返回大于或等于0.0且小于1.0的随机浮点数。

示例:生成随机浮点数

Random random = new Random();
float randomFloat = random.NextSingle(); // 生成一个 0.0 到 1.0 之间的随机浮点数
Console.WriteLine(randomFloat);//比如返回0.49565697

3、 生成随机字母或字符

可以通过随机生成字符的 ASCII 码来生成随机字母。

示例:生成随机字母

Random random = new Random();
char randomChar = (char)random.Next('A', 'Z' + 1); // 生成大写字母
Console.WriteLine(randomChar);

示例:生成随机小写字母

Random random = new Random();
char randomChar = (char)random.Next('a', 'z' + 1); // 生成小写字母
Console.WriteLine(randomChar);

专栏推荐

地址
【从零开始入门unity游戏开发之——C#篇】
【从零开始入门unity游戏开发之——unity篇】
【制作100个Unity游戏】
【推荐100个unity插件】
【实现100个unity特效】
【unity框架开发】

完结

赠人玫瑰,手有余香!如果文章内容对你有所帮助,请不要吝啬你的点赞评论和关注,你的每一次支持都是我不断创作的最大动力。当然如果你发现了文章中存在错误或者有更好的解决方法,也欢迎评论私信告诉我哦!

好了,我是向宇,https://xiangyu.blog.csdn.net

一位在小公司默默奋斗的开发者,闲暇之余,边学习边记录分享,站在巨人的肩膀上,通过学习前辈们的经验总是会给我很多帮助和启发!如果你遇到任何问题,也欢迎你评论私信或者加群找我, 虽然有些问题我也不一定会,但是我会查阅各方资料,争取给出最好的建议,希望可以帮助更多想学编程的人,共勉~
在这里插入图片描述

http://www.lryc.cn/news/505053.html

相关文章:

  • 我们来对接蓝凌OA --报文格式
  • 旅游系统旅游小程序PHP+Uniapp
  • Pytest-Bdd-Playwright 系列教程(15):背景(Background)
  • ionic V6 安装ios所需
  • 3d模型展示-初探
  • OpenLinkSaas 2025年1月开发计划
  • C# 用封装dll 调用c++ dll 使用winapi
  • XML基础学习
  • Jmeter直连数据库,jar包下载
  • Unity读取、新建Excel表格
  • 智能高效的IDE GoLand v2024.3全新发布——支持最新Go语言
  • OpenCV相机标定与3D重建(21)投影矩阵分解函数decomposeProjectionMatrix()的使用
  • Flink State面试题和参考答案-(下)
  • 111.【C语言】数据结构之二叉树的销毁函数
  • [论文阅读] |智能体长期记忆与反思
  • 【Trouble Shooting】Oracle ADG hung,出现ORA-04021
  • 基于springboot的招聘系统
  • 国科大智能设备安全-APK逆向分析实验
  • 使用SpaceDesk实现iPad成为电脑拓展屏(保姆级教程)
  • Unity UI Button 事件优先级调整技术方案
  • 算法训练营day1 | 704二分查找,27移除元素, 34, 35
  • 66 基于单片机的太阳能充电、温度检测、档位PWM调速系统
  • RK3576 Android14,内存大于4G时UVC应用无法申请内存
  • 12.12 深度学习-卷积的注意力机制-通道注意力SENet
  • H5 scss 移动端的样式适配
  • 【JAVA】Java项目实战—移动端项目:天气查询APP
  • SpringBoot - 动态端口切换黑魔法
  • Java爬虫技术:挖掘淘宝数据的利器
  • Chromium for Android 浏览器的编译和安装
  • 实景视频与模型叠加融合?