相关疑难解决方法(0)

有一种简单的方法可以返回重复X次的字符串吗?

我试图在一个基于项深度的字符串之前插入一定数量的缩进,我想知道是否有一种方法可以重复X次返回一个字符串.例:

string indent = "---";
Console.WriteLine(indent.Repeat(0)); //would print nothing.
Console.WriteLine(indent.Repeat(1)); //would print "---".
Console.WriteLine(indent.Repeat(2)); //would print "------".
Console.WriteLine(indent.Repeat(3)); //would print "---------".
Run Code Online (Sandbox Code Playgroud)

.net c#

290
推荐指数
9
解决办法
17万
查看次数

String.Join vs. StringBuilder:哪个更快?

之前关于格式化double[][]为CSV格式的问题中,Marc Gravell 表示使用StringBuilder将比使用更快String.Join.这是真的?

.net string performance stringbuilder

73
推荐指数
4
解决办法
5万
查看次数

是否有内置函数在.net中重复字符串或字符?

c#中是否有一个函数返回给定char或string的x次.或者我必须编码吗?

c# vb.net asp.net

44
推荐指数
5
解决办法
3万
查看次数

使用单个值填充数组的最快方法

我想用我所拥有的单个值填充2D数组,但是,我想尽可能以最快的方式完成2D数组的长度总计200k +并且随着时间的推移将有超过200个这样的数组.我查看了Buffer.BlockCopy和Array.Copy,但是,它们都将数组作为源/目标,其中我唯一的数组是目标,源是单个值.

填充数组的最快方法是源是单个值而不是数组?

c# memory algorithm optimization performance

14
推荐指数
1
解决办法
2万
查看次数

是否有内置方法可以多次向字符串添加字符?

是否有内置函数或更有效的方法将字符添加到字符串X次?

例如,以下代码将向字符串添加"0"字符5次:

int count = 5;
char someChar = '0';
string myString = "SomeString";

for(int i=0;i<count;i++)
{
    myString = someChar + myString;
}
Run Code Online (Sandbox Code Playgroud)

c# string for-loop

8
推荐指数
1
解决办法
1445
查看次数

如何使用Console.WriteLine()多次打印相同的字符

可能重复:
是否有一种简单的方法可以重复多次返回字符串?

如果我想在Python中显示10次点,我可以使用:

print ".........."
Run Code Online (Sandbox Code Playgroud)

或这个

print "." * 10
Run Code Online (Sandbox Code Playgroud)

如何在C#中使用第二种方法?我试过各种变化:

Console.WriteLine("."*10);
Run Code Online (Sandbox Code Playgroud)

但他们都没有工作.谢谢.

c# printing console.writeline

6
推荐指数
1
解决办法
2万
查看次数

字符串插值 - 重复

有没有办法在不重复的情况下多次插值变量?

例如:

var name = "bla";
Console.WriteLine($"foo {name:repeat:2} bar")
Run Code Online (Sandbox Code Playgroud)

打印

foo blabla bar
Run Code Online (Sandbox Code Playgroud)

我特别感兴趣的是插入几个换行符而不是{Environment.NewLine}在插值掩码中重复几次,如下所示:

$"{Environment.NewLine}{Environment.NewLine}"
Run Code Online (Sandbox Code Playgroud)

c# string interpolation string-interpolation

4
推荐指数
1
解决办法
162
查看次数

是否有LINQ方式将相同字符n次附加到字符串?

我想创建一个重复n次相同序列的字符串。

我该怎么做:

var sequence = "\t";
var indent = string.Empty;   

for (var i = 0; i < n; i++)
{
    indent += sequence;
}
Run Code Online (Sandbox Code Playgroud)

是否有一个等效的LINQ来完成相同的结果?

c# linq

2
推荐指数
1
解决办法
67
查看次数

制作一堆逗号

可能重复:
在C#中重复一个字符的最佳方式

我正在制作一个大的逗号分隔的CSV文件.大多数文件字段都是null,稍后会提供,所以我只需要插入一个逗号.我做了一个简单的方法:

 private string MakeComma(int CommaNumber)
{
    StringBuilder sb = new StringBuilder(string.Empty);
    for (int i = 0; i < CommaNumber; i++)
    {
        sb.Append(",");
    }
    return sb.ToString();
}
Run Code Online (Sandbox Code Playgroud)

我想知道是否有更好的方式使用Linq,Join等.

c# linq csv string

1
推荐指数
1
解决办法
147
查看次数

随机生成1个字符随机数量

嗨我试图这样做,所以我可以生成一个随机数1-35所以例如如果数字是25它将写出一个字符串25等号.我怎样才能做到这一点?

Random r = new Random();
r.next(1, 35);
R's result = 25
string result = 25 equal signs
Run Code Online (Sandbox Code Playgroud)

c#

1
推荐指数
1
解决办法
105
查看次数

1000个相同的字符,不使用循环,并在代码中多次重复此字符

假设我们需要在一行中输出1000个符号而不需要循环或递归.当然没有在那里制作1000行代码.

想到的noob解决方案是......

string s = "#";
s = s+s+s+s+s+s+s+s+s+s;
s = s+s+s+s+s+s+s+s+s+s;
s = s+s+s+s+s+s+s+s+s+s;
Console.WriteLine(s);
Run Code Online (Sandbox Code Playgroud)

还有其他人吗?

c#

-3
推荐指数
1
解决办法
97
查看次数