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

  • ipsy Makeup Tips

    ipsy Makeup

    19 ŞUBAT 2009
  • Mega64

    Mega64

    24 ŞUBAT 2006
  • Sam Kear

    Sam Kear

    14 Temmuz 2007