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

博物馆门户网站建设免费版个人简历

博物馆门户网站建设,免费版个人简历,网站推广方案怎么写,wordpress腾讯课堂由于微信公众号改变了推送规则,为了每次新的推送可以在第一时间出现在您的订阅列表中,记得将本公众号设为星标或置顶喔~ 简单介绍了C#字符串分割、取子串、拼接、格式化数值以及StringBuilder类,拿捏测绘程序设计大赛~ 🌿前言 字…

由于微信公众号改变了推送规则,为了每次新的推送可以在第一时间出现在您的订阅列表中,记得将本公众号设为星标或置顶喔~


  简单介绍了C#字符串分割、取子串、拼接、格式化数值以及StringBuilder类,拿捏测绘程序设计大赛~

🌿前言

  字符串的操作是测绘程序设计大赛的重点,本文根据笔者经验分享了字符串的分割、取子串、拼接,以及最重要的格式化数值操作,最后提到了StringBuilder类的AppendLine方法在测绘程序设计大赛中的妙用。

🍀字符串的分割

  字符串的分割意思是:将一个字符串变量按照某个字符分割开得到一个字符串数组,也叫裂开、分隔🤣反正就和方言一样说法不一罢了。

  例如:将一个字符串例如"测绘,遥感,地信,自环"按照逗号进行split(分割),得到一个字符串数组["测绘", "遥感", "地信", "自环"]。在C#中,字符串提供有Split方法(函数,在类中笔者很习惯叫方法,形如xxx.Split())来实现这个过程。

string myString = "测绘,遥感,地信,自环";// 按照逗号分割字符串
//string[] stringArray = myString.Split(new char[] { ',' });
string[] stringArray = myString.Split(','); //简写方式(适合比赛)// 使用foreach循环打印
foreach (string s in stringArray)
{Console.WriteLine(s);
}Console.ReadKey();
  • 核心语句string[] stringArray = myString.Split(',');

  Split方法可以将字符串按照指定字符分割成字符串数组。如果需要分割的字符串是按照空格或者分号间隔的,只需稍加改动即可。不仅如此,如果将myString.Split(',')改为myString.Split(',', ';'),还会同时按照逗号和分号来分割字符串,读者可以自行尝试。

  字符串分割是测绘程序设计大赛读取数据文件时经常会用到。例如2024年测绘程序设计大赛数据就是一个很经典的例子。

2024年测绘程序设计大赛数据格式说明

🌸字符串取子串

  字符串的子串,是指从一个字符串A内截取一段连续的字符得到新的字符串B,则字符串B就是字符串A的子串。例如:字符串测神州经纬就是字符串测神州经纬,绘祖国蓝图!的一个子串。从字符串A中截取产生新的字符串B的动作就是字符串取子串。C#中,Substring方法可以实现这个过程。

string s = "测神州经纬,绘祖国蓝图!";
string s1 = s.Substring(0, 6); //从位置0开始向后取6位,包括位置0
string s2 = s.Substring(6);//从索引6(绘)位置开始到结束,包括索引6
Console.WriteLine(s1);
Console.WriteLine(s2);
//这里使用Join函数可以将字符串数组重新组合成字符。
Console.WriteLine(string.Join("", new string[] { s1, s2 }));Console.ReadKey();
  • 核心语句string s1 = s.Substring(0,6); //从位置0开始向后取6位,包括位置0

  • 核心语句string s2=s.Substring(6);//从索引6(绘)位置开始到结束,包括索引6

  Substring只需要指定子串的起始索引和子串长度(包括起始位置在内)即可实现取子串;如果只传入一个数字而不传入子串长度,则会从当前位置取到结束

  需要注意的是:C#中字符串、数组都是从0开始索引。而在Matlab中,字符串索引从1开始,所以经常编写Matlab代码的参赛选手需要稍加注意。

  在测绘程序设计大赛中,字符串取子串通常用来读取星历文件,例如李英冰老师的《测绘程序设计》教材中电离层改正计算章节的数据文件读取。

星历文件数据格式

🌱字符串拼接

  字符串拼接很好理解:两个字符串按照先后顺序拼接在一起组成一个新的字符串的过程。字符串拼接的方法很多,这里笔者仅介绍种常用的方法。

1.可以使用加法运算符直接拼接字符串:

string a = "Hello";
string b = "C#";
string c = "I'm little y";
//直接相加,连接成新的字符串
string result = a + " " + b + "\n" + c;
Console.WriteLine(result);

2.但是笔者更推荐使用美元符号$:

string a = "Hello";
string b = "C#";
string c = "I'm little y";
//双引号前加$符号,{}类填变量名
string result = $"{a} {b}\n{c}";
Console.WriteLine(result);

🌴格式化数值

  格式化数值,笔者也不知道是哪里冒出来的这个词😂。其大致意思就是说对数字进行保留两位小数、保留三位有效数字等等这种,保留完后的类型是字符串。此处仅说明常用的保留小数位的方法。

1.使用stringFormat()函数

double a = 3.14;
//使用零占位符0和数字占位符#
Console.WriteLine(string.Format("{0:00.###}", a));//03.14
Console.WriteLine(string.Format("{0:00.000}", a));//03.140Console.ReadKey();

  零占位符就是说这个位置默认值是0,如果有数字,则变成相应的数字。数字占位符所在位置如果有数字则为数字,否则不存放任何值。变量名后跟冒号,冒号之后写格式要求。

2.笔者还是推荐使用美元符号$

double a = 3.14;
//使用零占位符0和数字占位符#
Console.WriteLine($"{a:00.###}");//03.14
Console.WriteLine($"{a:00.000}");//03.140Console.ReadKey();

3.比赛推荐

  在比赛时,通常要求最后的结果保留几位小数,如果是保留八位小数,则按照上述方法需要敲至少八个0,就不是很方便。笔者推荐使用’Fn’的方式。F即可以理解为float。F0就是保留0位小数。

double a = 3.14;
//使用Fn的方式,F0表示保留0位小数,F也可以小写f
Console.WriteLine($"{a:F0}");//3
Console.WriteLine($"{a:f3}");//3.14Console.ReadKey();

  需要注意的是,这种小数取位方式可能是四舍五入、也有可能直接是去尾法、亦或是其他方法,不同的编程语言还不太一样。

  但对于测绘程序设计大赛而言,最终的评分是将你计算的结果与参考值作差,就像浮点数判断是否相等那样,来确定答案正确与否。且大部分参赛选手也都是这么写法、《测绘程序设计》教材参考代码也是这种写法,所以该写法问题并不大。具体可以赛前再与比赛举办方交流沟通~

2024年比赛输出格式要求(部分)

🌳其他字符串方法

Trim()

  对于其他字符串方法,笔者暂时能想到的会用得上的也就Trim。Trim释义有修剪、整洁的意思,实际效果就是去除字符串首尾空格。在读取字符串结束后,做一遍Trim是一种好习惯,可以提高程序的容错性

string myString = "          太棒啦!   ";
Console.WriteLine(myString);
string trimString= myString.Trim();
Console.WriteLine(trimString);Console.ReadKey();

  通过断点调试,可以在局部变量窗口看到Trim的效果:去除字符串首尾空格。

断点调试

🍂StringBuilder类

  String是不可变的类型,在做字符串拼接等操作时,都是产生一个新的字符串。StringBuilder类的内容是可变的,在进行字符串的一些操作时会*相对高效**。

  而笔者想要的,不是StringBuilder的效率,而是StringBuilder的换行符。StringBuilder类有很多的方法,比如Append、AppendLine、Insert、Remove、Replace…等等,笔者仅展示AppendLine(增加一行内容)的用法。

  在没有了解StringBuilder类之前,笔者在组织测绘程序设计报告内容部分时一直使用\n来进行换行操作。

//传统换行符编写报告
string temp = "序号,说明,计算结果\n";
temp += "1,xxx,xxx\n";
temp += "2,yyy,yyy\n";
string report = temp;Console.WriteLine(report);
Console.ReadKey();

  在学会使用StringBuilder类以后,觉得还是StringBuilder会相对方便一些。

//StringBuilder编写报告
StringBuilder sb = new StringBuilder();
sb.AppendLine("序号,说明,计算结果");
sb.AppendLine("1,xxx,xxx");
sb.AppendLine("2,yyy,yyy");string report = sb.ToString();Console.WriteLine(report);
Console.ReadKey();

  使用AppenLine时,会自动在字符串尾部追加一个换行符\n,在比赛紧张场景下,漏掉换行符是笔者常有之事🤣(符号太多啦看不过来,不知道读者是不是也和笔者一样~),使用AppenLine会好很多

笔者比赛时使用的StringBuilder

🌹结语

  1. 关于字符串还有许多其他的知识,比如@符号、字符串的比较、字符串包含与被包含关系等等,因篇幅有限且测绘程序设计大赛用的较少,读者可自行查看微软官方文档:https://learn.microsoft.com/zh-cn/dotnet/standard/base-types/best-practices-strings

  2. 微软官方文档介绍StringBuilder类:https://learn.microsoft.com/zh-cn/dotnet/standard/base-types/stringbuilder

  3. 笔者为测绘遥感方向的学习者,愿意结交志同道合的伙伴,欢迎关注公众号与笔者一起交流学习~


  • 路虽远,行则将至;事虽难,做则必成。希望认真学习的你能够有所收获~

  • 本公众号的原创成果,在未经允许的情况下,请勿用于任何商业用途!

  • 如果本文有幸可以帮到您,欢迎您的点赞👍、收藏⭐与关注❤;您的点赞👍、收藏⭐与关注❤是我创作的最大动力~


http://www.yayakq.cn/news/139669/

相关文章:

  • 网站开发竞价单页在哪个平台建公司官网
  • 网站建设实践报告3000字玉溪住房和城乡建设局网站
  • 安庆网站开发网站建设发展历程ppt
  • 深圳正规网站制作哪家公司好如何做响应式布局网站
  • 做网站的公司 杭州一起做网站潮汕
  • 不同类型企业网站的对比分析seminar是什么意思
  • 怎么做子网站修改wordpress登陆界面
  • 猎头建设网站安全的网站
  • 那个网站适合学生做兼职男女做性哪个的小视频网站
  • 网站建设套餐报价佳木斯市建设局网站
  • 免费网站建设模板做淘客的网站
  • 深圳网站建设公司模板鞍山网上制作网站
  • 网站开发服务 税哪个网站做兼职有保障
  • 中牟建设局网站手机触屏版网站开发
  • 网站控制面板做一手楼房的网站
  • 企业固定ip做网站wordpress用什么主机好
  • 婚庆公司网站建设总结报告上海网站建设模板站霸网络
  • 潍坊做网站优化凡科网app下载
  • 信息化网站建设的请示石大远程在线考试 《网页设计与网站建设》
  • 上海外贸建站网站建设捌金手指专业8
  • 服务器网站配置最新外贸电商平台
  • 阿里云 装wordpress乐陵市seo关键词优化
  • 网站赌场怎么做代理济南网站制作开通
  • 网站项目计划书范文广州网站制作功能
  • 海淀区网站制作公司百度 营销推广怎么做
  • 上海电子商务网站58同城 网站建设 成都
  • 自己做一网站_多做宣传.网站建设职业规划
  • 重庆忠县网站建设体育新闻最新消息女排
  • 搜狗优化好的网站宝安区做外贸网站的公司
  • 网站建设通报本地wordpress怎么上传