अगर मेरे पास:
List<string> myList1;
List<string> myList2;
myList1 = getMeAList();
// Checked myList1, it contains 4 strings
myList2 = getMeAnotherList();
// Checked myList2, it contains 6 strings
myList1.Concat(myList2);
// Checked mylist1, it contains 4 strings... why?
मैंने विजुअल स्टूडियो 2008 में इसी तरह का कोड चलाया और प्रत्येक निष्पादन के बाद ब्रेक पॉइंट सेट किए। इसके बाद myList1 = getMeAList();
, myList1
चार तार शामिल हैं, और मैंने यह सुनिश्चित करने के लिए प्लस बटन दबाया कि वे सभी नल नहीं थे।
इसके बाद myList2 = getMeAnotherList();
, myList2
छह तार शामिल हैं, और मैंने यह सुनिश्चित करने के लिए जाँच की कि वे शून्य नहीं थे ... myList1.Concat(myList2);
myList1 के बाद केवल चार तार शामिल थे। ऐसा क्यों है?