SORU
4 Ocak 2009, Pazar


En iyi C karakteri tekrarlamak *

En iyi yolu \tBir karakter dizisi oluşturmak için ne's C#

C öğreniyorum# ve aynı şeyi söylemenin farklı yolları denemektedir.

Tabs(uint t) string \t tmiktar's . ile döndüren bir işlevdir

Örneğin Tabs(3) "\t\t\t" döndürür

Tabs(uint numTabs) uygulama bu üç yol en iyisidir?

"" Anlamına gelir. en iyi ne olduğuna bağlı tabii

  1. SERİ versiyonu güzel olan sadece iki satır. Ama bu aramaları Tekrarlamak ve gereksiz yere Toplama zamanı/kaynak tüketen?

  2. StringBuilder sürümü çok açıktır ama StringBuilder sınıfı bir şekilde yavaş mı?

  3. string sürümü kolay anlaşılır olduğu anlamına gelir, temel,.

  4. Hiç umurunda değil mi? Tüm bunlar?

Bu bana C için daha iyi bir fikir almak için sorular#.

private string Tabs(uint numTabs)
{
    IEnumerable<string> tabs = Enumerable.Repeat("\t", (int) numTabs);
    return (numTabs > 0) ? tabs.Aggregate((sum, next) => sum   next) : ""; 
}  

private string Tabs(uint numTabs)
{
    StringBuilder sb = new StringBuilder();
    for (uint i = 0; i < numTabs; i  )
        sb.Append("\t");

    return sb.ToString();
}  

private string Tabs(uint numTabs)
{
    string output = "";
    for (uint i = 0; i < numTabs; i  )
    {
        output  = '\t';
    }
    return output; 
}

CEVAP
4 Ocak 2009, Pazar


Bu ne hakkında:

string tabs = new String('\t', n);

Ya da daha iyisi:

static string Tabs(int n)
{
    return new String('\t', n);
}

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • ETrade Supply

    ETrade Suppl

    23 Temmuz 2011
  • MkElite

    MkElite

    13 NİSAN 2012
  • MusicDeluxeTV

    MusicDeluxeT

    14 Mayıs 2010