এটি স্কেলার জীবনের দুঃখজনক সত্য যে আপনি যদি কোনও তালিকা [ইন্টি] ইনস্ট্যান্ট করেন তবে আপনি যাচাই করতে পারবেন যে আপনার উদাহরণটি একটি তালিকা, এবং আপনি যাচাই করতে পারেন যে এর কোনও স্বতন্ত্র উপাদান একটি অন্তর্গত, তবে এটি নয় যে এটি একটি তালিকা [ ইন্ট], যা সহজেই যাচাই করা যায়:
scala> List(1,2,3) match {
| case l : List[String] => println("A list of strings?!")
| case _ => println("Ok")
| }
warning: there were unchecked warnings; re-run with -unchecked for details
A list of strings?!
চেক করা বিকল্প অপসারণের ধরণটি ধীরে ধীরে দোষ চাপিয়ে দেয়:
scala> List(1,2,3) match {
| case l : List[String] => println("A list of strings?!")
| case _ => println("Ok")
| }
<console>:6: warning: non variable type-argument String in type pattern is unchecked since it is eliminated by erasure
case l : List[String] => println("A list of strings?!")
^
A list of strings?!
এটি কেন, এবং আমি কীভাবে এটি ঘিরে পাব?
scala 2.10.2
, পরিবর্তে আমি এই সতর্কতাটি দেখেছি: <console>:9: warning: fruitless type test: a value of type List[Int] cannot also be a List[String] (but still might match its erasure) case list: List[String] => println("a list of strings?") ^
আমি আপনার প্রশ্ন এবং উত্তরটি খুব সহায়ক বলে খুঁজে পেয়েছি তবে আমি নিশ্চিত নই যে এই আপডেট হওয়া সতর্কবাণীটি পাঠকদের পক্ষে কার্যকর কিনা।