我是编程新手
我开始学习C#语言
Console.WriteLine("yes or no ?");
string answer = Console.ReadLine();
switch (answer)
{
case "yes":
// some code
break;
case "no":
//some code
break;
default:
//some code
break;
我的问题是,如果用户插入他的答案“是”、“是”、“是”或他写“是”的任何方式,程序将执行默认代码,因为它与我在切换大小写中写的小写“是”不完全匹配。有没有一种高级的方法可以让程序检测到大写字母的"yes“与"Yes”的答案相同,然后执行case "yes“的块代码。
我的第二个问题我选择C#作为我的第一语言,因为Unity3d游戏引擎支持这种语言,所以我决定先学习这门语言,然后在unity3d中使用它是一个正确的决定
如果我的问题看起来很愚蠢,我很抱歉,但正如我所说的,我是新手
发布于 2016-12-17 16:32:56
在将用户输入与您的(小写)选择进行比较之前,使用String.ToLower()
将其转换为小写。还应考虑使用String.Trim()
从字符串中删除前导/尾随空格
switch (answer.Trim().ToLower())
{
case "yes":
// some code
break;
case "no":
//some code
break;
default:
//some code
break;
发布于 2016-12-17 16:35:13
你必须将他的答案转换成大写或小写,这样它就会被识别。
switch (answer.ToUpper())
{
case "YES":
// some code
break;
case "NO":
//some code
break;
default:
//some code
break;
或
switch (answer.ToLower())
{
case "yes":
// some code
break;
case "no":
//some code
break;
default:
//some code
break;
至于选择C#作为你的第一种语言,如果你想用Unity制作游戏,这是完全可以的。如果你想尝试GameMaker,学习Java会对你有好处。
我不同意所有人说Python应该是你的第一语言。这完全取决于您想要编写什么代码,并且出于您的原因,C#是非常好的。
发布于 2016-12-17 16:41:26
您可以使用以下内容:
switch(answer.ToLower())
这会将所有字符转换为小写。
关于Unity 3D,我认为C#是一种非常灵活和广泛的语言,它可以让你做很多事情。随着每个版本的发布,它会变得越来越好,并且您有大量的名称空间和函数集合来帮助您完成它。
为了学习Unity3D相关知识,微软还在https://mva.microsoft.com/training-topics/game-development#!jobf=Developer&lang=1033上为初学者提供了视频教程
在这个链接上,你可以找到微软的一系列视频,这将帮助你入门。
https://stackoverflow.com/questions/41200702
复制相似问题