C# 当我按Enter键而不给出任何值时,我希望返回第一个案例,但它会返回第二个案例 使用系统; 使用System.Collections.Generic; 名称空间程序 { 职业类 { 静态void Main(字符串[]参数) { 变量名称=新列表(); var Line=Console.ReadLine().Split(); foreach(行中的var项目) { 名称。添加(项目); } 开关(名称.计数) { 案例0: Console.WriteLine(); 打破 案例1: Console.WriteLine(名称[0]+“喜欢你的帖子”); 打破 案例2: Console.WriteLine(名称[0]+”和“+名称[1]+”喜欢你的帖子); 打破 违约: Console.WriteLine(名称[0]+”和“+名称[1]+”和” +(names.Count-2)+“喜欢你的帖子”); 打破 } } } }
我没有测试过您的代码,也没有遇到过这个特定问题。但我有根据的猜测是,它正在将“”(空字符串)添加到您的列表中。我建议您在将每个条目添加到列表时将其打印到控制台。。。看看它在列表中添加了什么。然后,如果要修复它,请确保通过将其与“”进行比较并在发现add指令为空时跳过带有空字符串的条目C# 当我按Enter键而不给出任何值时,我希望返回第一个案例,但它会返回第二个案例 使用系统; 使用System.Collections.Generic; 名称空间程序 { 职业类 { 静态void Main(字符串[]参数) { 变量名称=新列表(); var Line=Console.ReadLine().Split(); foreach(行中的var项目) { 名称。添加(项目); } 开关(名称.计数) { 案例0: Console.WriteLine(); 打破 案例1: Console.WriteLine(名称[0]+“喜欢你的帖子”); 打破 案例2: Console.WriteLine(名称[0]+”和“+名称[1]+”喜欢你的帖子); 打破 违约: Console.WriteLine(名称[0]+”和“+名称[1]+”和” +(names.Count-2)+“喜欢你的帖子”); 打破 } } } },c#,C#,我没有测试过您的代码,也没有遇到过这个特定问题。但我有根据的猜测是,它正在将“”(空字符串)添加到您的列表中。我建议您在将每个条目添加到列表时将其打印到控制台。。。看看它在列表中添加了什么。然后,如果要修复它,请确保通过将其与“”进行比较并在发现add指令为空时跳过带有空字符串的条目 让我知道它是如何运行的。您应该使用此拆分方法选项:removemptyentries以删除空字符串,正如@ZorgoZ所说 大概是这样的: var line=Console.ReadLine().Split(新[]
让我知道它是如何运行的。您应该使用此拆分方法选项:
removemptyentries
以删除空字符串,正如@ZorgoZ所说
大概是这样的:
var line=Console.ReadLine().Split(新[]{''},StringSplitOptions.RemoveEmptyEntries)代码>
使用此选项,您应该获得switch语句中的第一个case
您可以阅读有关的更多信息,因为Split
返回一个空字符串项。结果总是得到分隔符数+1项。在这种情况下,空格数(=0)+1=1项。Split
将返回空字符串。使用重载Split(新[]{''},StringSplitOptions.RemoveEmptyEntries)但是将数组元素添加到列表中有什么用呢?
using System;
using System.Collections.Generic;
namespace Program
{
class Pro
{
static void Main (string[] args)
{
var names = new List<string>();
var Line = Console.ReadLine().Split();
foreach (var item in Line)
{
names.Add(item);
}
switch (names.Count)
{
case 0:
Console.WriteLine();
break;
case 1:
Console.WriteLine(names[0] + "Likes your post");
break;
case 2:
Console.WriteLine(names[0] + "and" + names[1] + "Likes your post");
break;
default:
Console.WriteLine(names[0] + " and " + names[1] + " and "
+ (names.Count - 2)+"Likes your post");
break;
}
}
}
}