java.lang.UnsupportedOperationException

2015-06-23 14:50:12   作者:MangoCool   来源:MangoCool

在Scala的学习中,List集合并非像Java集合那样是可变的。如果要使用到可变的集合,就须要用ListBuffer;否则一旦使用了List,如果在后续设计到要操作集合,将会抛出异常:java.lang.UnsupportedOperationException

def main(agrs: Array[String]) {
    try {
      val sf = ("zhangsan","90","270")
      val lists = List[(String, String, String)]()
      lists.add(sf)
    } catch {
      case e: Exception => {
        e.printStackTrace
    }
  }
}
运行就会抛出异常:
java.lang.UnsupportedOperationException
at java.util.AbstractList.add(AbstractList.java:148)
at java.util.AbstractList.add(AbstractList.java:108)
at HbaseTest$.main(HbaseTest.scala:112)
at HbaseTest.main(HbaseTest.scala)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:134)

更改List为ListBuffer即可!

标签: Scala Java List exception

分享:

上一篇org.apache.spark.SparkException: Job aborted due to stage failure: Task 0.0 in stage 2.0 (TID 2) had a not serializable result: org.apache.hadoop.hbase.io.ImmutableBytesWritable

下一篇Scala的基础学习(三)数据类型

关于我

一个喜欢唱歌,热衷旅行,爱好电子产品的码农。没事,跟三五好友吼上几嗓子,约上几个背着行囊去露营或者宅在家里抱着孩子敲代码。

座右铭:当你的才华还撑不起你的野心的时候,你就应该静下心来学习,永不止步!

            人生之旅历途甚长,所争决不在一年半月,万不可因此着急失望,招精神之萎葸。


Copyright 芒果酷(mangocool.com) All rights reserved. 湘ICP备14019394号

免责声明:本网站部分文章转载其他媒体,意在为公众提供免费服务。如有信息侵犯了您的权益,可与本网站联系,本网站将尽快予以撤除。