c# 怎么用foreach 将两个字符串数组合并?

staticList<string>AString;staticList<string>BString;AString存储的是名字的字符串数组BString存储的是对话的... static List<string> AString;
static List<string> BString;

AString 存储的是名字 的字符串数组
BString 存储的是对话 的字符串数组
但是不知道怎么合到一起输出,而且不换行
比如

AString BString
NAME : SAY
张三: 你好,我是张三。
李四: 本大爷是李四。
啊久: 不是酒,是久啦!
展开
 我来答
魔法软糖&#x2122;
2020-02-23 · TA获得超过837个赞
知道小有建树答主
回答量:822
采纳率:94%
帮助的人:147万
展开全部

软糖来回答吧,合并string数组方法有很多种。

推荐使用linq语句,一行搞定

❶ 使用IEnumerable.Zip()方法

string r = string.Join("\r\n", AString.Zip(BString, (a, b) => a + ":" + b));

❷ 使用IEnumerable.Select()方法

string r = string.Join("\r\n", AString.Select((a, idx) => $"{a}:{BString[idx]}"));  

❸ 使用IEnumerable.Range()和Select()方法

string r = string.Join("\r\n", Enumerable.Range(0, AString.Count).Select(i => $"{AString[i]}:{BString[i]}"));

最后使用  Console.Write(r);  输出结果就行。

❹ 通过for循环实现

StringBuilder str = new StringBuilder();

for(int i=0; i< AString.count; i++)

{

str.AppendFormat("{0}:{1}\r\n", AString[i], BString[i]);

}

最后使用 Console.Write(str.ToString());输出结果就行。

匿名用户
2020-02-23
展开全部
这个不能用foreach吧,

换成for 试试:
for(int i=0; i==AString.Count(); i++)
{
MessageBox.Show(AString[i].NAME + ":" + BString[i].SAY);
}
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友965e06a
2020-03-13 · 贡献了超过172个回答
知道答主
回答量:172
采纳率:26%
帮助的人:13.7万
展开全部
List 是集合,不是数组,合并, Asting.Add(BString),不换行,就别加\n
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
hongrongai
2020-02-27 · 超过24用户采纳过TA的回答
知道答主
回答量:225
采纳率:45%
帮助的人:13万
展开全部
这个例子用foreach不合适吧,如果有个人连续讲了三句话,这样foreach不就对应错了吗
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式