2016-10-11 62 views
1
string[] groups; 
int groupCount; 
double[] grades; 
int gradeCount; 

所以groupsgrades在兩個獨立的數組和我需要將它們合併爲一個string並將它們添加到一個新的數組。如何將兩個單獨的對象從單獨的數組轉換爲一個字符串?

string[] test = new string[groupCount]; 
for (int i = 0; i < groupCount; i++) 
{ 
    test[i] = ("{0}: {1}", groups[i], Math.Round(grades[i],2));    
    Console.WriteLine("{0}", test[i]); 
} 

我該怎麼做?

+0

是的它拋出了很多錯誤的; 它期望「;」所以它會被適當地宣佈; 也: 錯誤只有分配,調用,遞增,遞減,在等待着,新對象表達式可以用作聲明 – Tom

+0

請看看[如何對提問](HTTP://計算器.com/help/how-to-ask) – swe

回答

1

你忘了string.Format()

它應該是,

string.Format("{0}: {1}", groups[i], Math.Round(grades[i], 2)); 

希望幫助,

+0

OMG!救生員:D非常感謝! ! – Tom

3

C#6.0 串插(請在字符串前通知$):

test[i] = $"{groups[i]}: {Math.Round(grades[i],2)}"; 

另一種可能性是的LINQ(以輸出整個收集一個去):

string[] groups; 
double[] grades; 

... 

var test = groups 
    .Zip(grades, (group, grade) => $"{group}: {Math.Round(grade, 2)}") 
    .ToArray(); // array materialization (if you want just to output you don't need it) 

Console.Write(String.Join(Environemnt.NewLine, test)); 
+0

得到了我的投票插值。我總是喜歡用更新的解決方案來回答問題。欲瞭解更多信息,可以參考:http://stackoverflow.com/documentation/c%23/24/c-sharp-6-0-features/49/string-interpolation#t=201610111152547586484 – uTeisT

相關問題