c# - LINQ:获取数组中每个字符串的第一个字符

标签 c# linq algorithm string

考虑一个形状如下的字符串数组:

  string[] someName = new string[] { "First", "MiddleName", "LastName" };

需求是获取数组中每个元素的第一个字符。

FML

以前试过:

string initials = string.Concat(someName.Select(x => x[0]));

问题:您会编写什么 LINQ 查询来连接字符串数组中包含的所有名称以给出首字母?

最佳答案

试试这个:

string shortName = new string(someName.Select(s => s[0]).ToArray());

或者,如果您怀疑任何字符串可能为空:

string shortName = new string(someName.Where(s => !string.IsNullOrEmpty(s))
                                      .Select(s => s[0]).ToArray());

关于c# - LINQ:获取数组中每个字符串的第一个字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1359471/

相关文章:

c# - WPF: 'ListView.ItemsSource' 属性在 'Loaded' 事件期间为空

c# - 如何过滤字典以包含具有唯一值的项目?

java - 如何在排序数组中找到第一次出现最大值的索引

C# 如何在循环中组合一些 Linq 表达式

c# - 从通用列表中删除属性/列

r - 在 R 中自动获取复杂的标题

algorithm - 高效存储对象,允许快速访问最高值( HashMap 与优先级队列)

c# - 使用 ObjectListView 自定义排序

c# - 数组中的销毁

c# - 有限状态机与另一种在 C# 中进行 UI 测试的技术