6
कैसे Seq [+ A] एक में covariant जा सकता है अगर एक contravariant स्थिति में होता है:सीक [+ ए] ए में कैसे हो सकता है?
def :+ (elem: A) : Seq[A] ?
मैं समझता हूँ के रूप में, एक विधि तर्क प्रकार एक contravariant स्थिति है। मैं क्या खो रहा हूँ ?
डैनियल ने जो कहा, उस पर निर्माण करने के लिए, संग्रह विधियां _a नया संग्रह_ लौटाती हैं और इनमें विस्तृत प्रकार हो सकता है। तो, हां, एक 'सेक [ए]' में केवल 'ए' हो सकता है, लेकिन आपका नया 'सीईसी' इसके प्रकार को बढ़ा सकता है ताकि इसमें केवल 'ए' से अधिक हो। –
यह एक शर्म की बात है कि उपयोग केस हस्ताक्षर ': + (elem: ए): सेक [ए] 'के बजाय': + [बी>: ए] (elem: B): Seq [B] '' । –
@ क्रिस I concur: ': + [बी>: ए] (elem: बी): सेक [बी]' अधिक सहज ज्ञान युक्त है। क्या हम स्काला लोगों से एपीआई दस्तावेज़ बदलने के लिए कह सकते हैं? – Michael