जिज्ञासा से और कुछ शोध के बाद मुझे मेरे जैसा मामला नहीं मिला,
विधि .toList()
और कास्टिंग as List
का उपयोग करने में क्या अंतर है और प्रत्येक का उपयोग कब किया जाना चाहिए?
कृपया, एक उदाहरण प्रदान करने पर विचार करें।
1 उत्तर
toList()
एक ऐसी विधि है जिसे कई प्रकार की वस्तुओं पर बुलाया जाता है और यह डेटा स्ट्रीम (या मौजूदा List
) से सभी डेटा एकत्र करेगी और डेटा युक्त एक नई सूची ऑब्जेक्ट बनाएगी।
as List
किसी दिए गए ऑब्जेक्ट को बताने का एक तरीका है (अक्सर dynamic
) वास्तव में रनटाइम पर एक List
ऑब्जेक्ट है। इसका उपयोग तब किया जाता है जब हम संकलन प्रकार पर प्रकार निर्धारित नहीं कर सकते (उदाहरण के लिए यदि JSON को पार्स करना)।
उदाहरण
हम कुछ JSON को डिकोड करते हैं और डार्ट को बताते हैं कि as List
का उपयोग करके हम गारंटी दे सकते हैं कि रनटाइम का प्रकार List
होगा।
import 'dart:convert';
void main() {
final list = json.decode('[1, 2, 3]') as List;
print(list); // [1, 2, 3]
final newList = list.cast<int>().map((e) => e * 2).toList();
print(newList); // [2, 4, 6]
}
फिर हम प्रत्येक मान को दोगुना करने के लिए .map
का उपयोग करते हैं और toList()
का उपयोग करके इसे एक नई सूची में बदलना चाहते हैं।
संबंधित सवाल
नए सवाल
list
सूची टैग का उल्लेख हो सकता है: एक लिंक की गई सूची (नोड का एक सेट सेट, प्रत्येक इसका उत्तराधिकारी संदर्भित करता है), या डायनामिक सरणी का एक रूप। HTML सूचियों के लिए उपयोग नहीं किया जा रहा है, इसके बजाय [html-सूचियों] का उपयोग करें।