【问题标题】:Sequence multiplication in c# [duplicate]c#中的序列乘法[重复]
【发布时间】:2012-09-18 01:52:45
【问题描述】:

可能重复:
Is there an easy way to return a string repeated X number of times?

在 Python 中,您可以像这样将序列相乘

fivespaces= ' ' * 5

在 C# 中是否有任何内置的等效项? (没有运算符重载或类扩展)

【问题讨论】:

  • @AhmadMageed -- 我不确定我是否同意这是重复的。在我看来,字符串只是一个例子。 python 也有其他序列类型(如列表):five_spaces_in_a_list = [' ']*5

标签: c# python


【解决方案1】:

如果它只是一个字符串,那么您可以通过将计数传递给 string() 来返回倍数

var fivespaces = new string(" ", 5);

如果你想要一个自定义类型之类的集合,你可以使用Enumerable.Repeat 来获取一个集合:

var items = Enumerable.Repeat(new SomeModel(), 5);

【讨论】:

  • 谢谢,使用单引号:)
  • 如果有人想在数组/列表上使用序列乘法,第二个示例也很有用,谢谢。
  • @k7ypt:记得接受答案。
  • 我不同意关闭作为重复。另一个线程仅涵盖字符串连接。以下也算作序列乘法。 s=[1,2,3,4,5] *5;
  • String 构造函数示例无法编译。唯一重复一个值的 String 构造函数重载需要一个 char (在单引号内,而不是答案中的两倍)。没有超载并重复string
猜你喜欢
  • 1970-01-01
  • 2014-05-05
  • 2020-09-18
  • 2012-06-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多