JoiKulp skrifaði:
Þetta er nú bara til að flækja málin fyrir honum.
Þar sem hann þyrfti að geta skilið kóðann sem hann á að skila þá bendi ég á núbbavæna lausn mína
hér
Ég get alveg tekið undir þetta að hluta, allavega hvað einfaldleikan varðar.
Eina "vandamálið" við þessa lausn hjá JoaKulp er að það er sífellt verið að búa til nýja strengi, af þeirri ástæðu sem áður var nefnd. Það þurfa menn að hafa í huga ef verið er að loopa og breyta strengum sérstaklega ef lengdin er breytileg.
Það breytir ekki öllu ef fjöldin er lítill en þetta fer að telja þegar ítranir eru margar og strengir lengri.
Þetta skiptir svo sem ekki öllu máli í þessu tilfelli en ef t.d. menn eru að eiga við stærri strengi t.d. væri verið að lesa inn úr skrá eða eitthvað því um líkt þá getur maður lent í vandræðum og því mikilvægt að vita af þessu.
Muna bara líka að ef þú notar StringBuilder að nota capacity (sett í smiðun þegar hann er frumstilltur) það bætir perfromance á honum umtalsvert.
dæmi um nokkrar lausnir sem hafa komið fram hér, ath listinn er hvorki tæmandi né fullkomin , þessu var bara hent upp í fljótheitum bara til að sýna fram ákveðið mynstur:
Fyrst keyrt 1 sinni.
Sláðu inn nafn:
test nafn
Testing with 1 iterations
19.03.2012 19:05:31 TitleCapsStringHagur() time: 1014
19.03.2012 19:05:31 TitleCapsStringBuilder() time: 906
19.03.2012 19:05:31 RexEx() time: 1979
19.03.2012 19:05:31 JoiKulp() time: 666
og svo ef ég spæsi nafninu saman 50 sinnum fyrir keyrstlu, til að bara til að prófa útkomuna ef um er að ræða lengri streng.
Sláðu inn nafn:
test nafn
Testing with 50 iterations
19.03.2012 19:04:45 TitleCapsStringHagur() time: 1032
19.03.2012 19:04:45 TitleCapsStringBuilder() time: 974
19.03.2012 19:04:45 RexEx() time: 2470
19.03.2012 19:04:45 JoiKulp() time: 1033
Sláðu inn nafn:
test nafn
Testing with 1000 iterations
19.03.2012 19:20:25 TitleCapsStringHagur() time: 1972
19.03.2012 19:20:25 TitleCapsStringBuilder() time: 2030
19.03.2012 19:20:25 RexEx() time: 10491
19.03.2012 19:20:25 JoiKulp() time: 50133
Það sést hér vel að lausn JoaKlup er hröðust með litla strengi en ef þeim fjölgar þá vesnar í því, stringbuilder lausnin og lausn Hags halda sínu striki nokkuð vel.
RexEx geta verið öflugar og þægilegar til að gera flóknari hluti með texta en performa ekki alltaf eins vel.
þessi mynd skýrir þetta kannski betur.
