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

  • Alan Fullmer

    Alan Fullmer

    3 EYLÜL 2010
  • Avast

    Avast

    27 NİSAN 2006
  • Dumb Stupid Videos

    Dumb Stupid

    26 Kasım 2013