কখনও কখনও আমি এটি দেখতে
List list = [];
তারপর list..add(color)
1 ডট ( .
) এবং 2 ডট ( ..
) ব্যবহারের ক্ষেত্রে পার্থক্য কী?
কখনও কখনও আমি এটি দেখতে
List list = [];
তারপর list..add(color)
1 ডট ( .
) এবং 2 ডট ( ..
) ব্যবহারের ক্ষেত্রে পার্থক্য কী?
উত্তর:
..
ক্যাসকেড স্বরলিপি হিসাবে পরিচিত । আপনি যদি একই অবজেক্টে বেশ কয়েকটি পদ্ধতিতে কল করতে চান তবে এটি আপনাকে একই লক্ষ্যটির পুনরাবৃত্তি না করার অনুমতি দেয়।
List list = [];
list.add(color1);
list.add(color2);
list.add(color3);
list.add(color4);
// with cascade
List list = [];
list
..add(color1)
..add(color2)
..add(color3)
..add(color4);
এটি ডার্টের ক্যাসকেড অপারেটর
var l1 = new List<int>()..add(0)..addAll([1, 2, 3]);
l1
একটি তালিকা হতে ফলাফল[0, 1, 2, 3]
var l1 = new List<int>().add(0).addAll([1, 2, 3]);
একটি ত্রুটির ফলাফল, কারণ .add(0)
প্রত্যাবর্তনvoid
..
(পূর্ববর্তী উদাহরণে) বোঝায় new List()
, যখন .
(পরে) অভিব্যক্তির পূর্ববর্তী অংশের রিটার্ন মান বোঝায়।
..
this
সব ধরণের পদ্ধতিতে ফিরে আসার প্রয়োজনীয়তা এড়াতে প্রবর্তন করা হয়েছিল যেমন add()
একটি সাবলীল উপায়ে কোনও API ব্যবহার করতে সক্ষম হতে।
..
এটি সমস্ত শ্রেণীর জন্য বক্সের বাইরে সরবরাহ করে।
new
এখন alচ্ছিক। ..
প্রত্যাবর্তিত তালিকাকে বোঝায় এবং এর উপরে new List<int>()
একাধিক পদ্ধতি কল করতে দেয় যেমন add(0)
addAll(...)
পুনরাবৃত্তি না করে l1.
এবং এটি তৈরি করা তালিকা উদাহরণ যা নির্ধারিত হয় l1
, শৃঙ্খলে ( ) এর শেষ পদ্ধতির রিটার্ন মান নয়addAll(...)
। এটা কি তোমার প্রশ্নের উত্তর?
new
ডার্ট ২.০ দিয়ে beginningচ্ছিক শুরু, আমি কেবল new
উপরের প্রসঙ্গে বিভ্রান্ত হয়ে পড়েছিলাম এবং আপনার ব্যাখ্যার জন্য ধন্যবাদ thanks
..add(6)
মত l1.add(6)
, .add(6)
মত l1.add(5).add(6)
। add(5)
আয় void
এবং আপনার কল করতে পারবেন না add()
উপরvoid
ক্যাসকেড (..) আপনাকে একই অবজেক্টে ক্রিয়াকলাপ তৈরি করার অনুমতি দেয়। বিশদ জন্য ডক পড়ুন
querySelector('#confirm') // Get an object.
..text = 'Confirm' // Use its members.
..classes.add('important')
..onClick.listen((e) => window.alert('Confirmed!'));
পূর্ববর্তী উদাহরণটি সমান:
var button = querySelector('#confirm');
button.text = 'Confirm';
button.classes.add('important');
button.onClick.listen((e) => window.alert('Confirmed!'));
..onClick
অনুবাদ করে না button.classes.onClick
?
.. (in former example) refers to new List()
, আপনি কি বোঝাতে চাইছেন যে আমরা আবার নতুন তৈরিList
করছি যখন আমরা..
আমার মতে কোনটি ব্যবহার করি না। আমি আপনার কথাnew
শুনে বিভ্রান্ত হয়ে পড়েছি , এটি কি সত্যিই নতুন বা আপনিnew
এখানে কীওয়ার্ড নিয়ে কথা বলছেন ।