मेरी वर्तमान परियोजना में डेटा संरचनाओं में से एक के लिए आवश्यक है कि मैं विभिन्न प्रकारों (स्ट्रिंग, int, float, आदि) की सूचियों को संग्रहित करता हूं। मुझे यह जानने के बिना गतिशील रूप से किसी भी सूची को स्टोर करने में सक्षम होना चाहिए कि वे किस प्रकार के होंगे।विभिन्न प्रकार की सूचियों की सूची
मैंने प्रत्येक सूची को object
के रूप में संग्रहीत करने का प्रयास किया, लेकिन मैं उचित प्रकार में वापस डालने की कोशिश करने में समस्याओं में भाग गया (यह सब कुछ List<String>
के रूप में पहचान रहा था)।
उदाहरण के लिए:
List<object> myLists = new List<object>();
public static void Main(string args[])
{
// Create some lists...
// Populate the lists...
// Add the lists to myLists...
for (int i = 0; i < myLists.Count; i++)
{
Console.WriteLine("{0} elements in list {1}", GetNumElements(i), i);
}
}
public int GetNumElements(int index)
{
object o = myLists[index];
if (o is List<int>)
return (o as List<int>).Count;
if (o is List<String>) // <-- Always true!?
return (o as List<String>).Count; // <-- Returning 0 for non-String Lists
return -1;
}
Am मैं गलत तरीके से कुछ कर रही? क्या विभिन्न प्रकार की सूचियों की सूची को स्टोर करने का कोई बेहतर तरीका है, या यह निर्धारित करने का एक बेहतर तरीका है कि कुछ निश्चित प्रकार की सूची है या नहीं?
क्या आप एक न्यूनतम लेकिन पूरा प्रोग्राम पोस्ट कर सकते हैं जो आपकी समस्या का प्रदर्शन करता है? – dtb