在Scala中将java对象转换为Object []
发布时间:2020-12-16 09:00:31 所属栏目:安全 来源:网络整理
导读:嗨,在 scala上工作的 Android短信应用程序很好,我希望我找不到在scala中编写以下java代码的方法.任何帮助赞赏 //---retrieve the SMS message received--- Object[] pdus = (Object[]) bundle.get("pdus"); msgs = new SmsMessage[pdus.length]; for (int i=
嗨,在
scala上工作的
Android短信应用程序很好,我希望我找不到在scala中编写以下java代码的方法.任何帮助赞赏
//---retrieve the SMS message received--- Object[] pdus = (Object[]) bundle.get("pdus"); msgs = new SmsMessage[pdus.length]; for (int i=0; i<msgs.length; i++){ msgs[i] = SmsMessage.createFromPdu((byte[])pdus[i]); 我必须承认我不知道如何在scala中编写Object []而不是java.util.ArrayList [java.lang.Object] //I know I should be using an Option ... def getSmsListFromIntent(intent:Intent):List[SmsMessage]= { val bundle = intent.getExtras() var ret:List[SmsMessage]= null if (bundle != null) ret= for { pdu <- bundle.getStringArrayList("pdus").toList } yield SmsMessage.createFromPdu( pdu.getBytes()) else ret= List() ret java代码来自:http://mobiforge.com/developing/story/sms-messaging-android 解决方法
以下是标题中的问题,可能不是解决问题的最佳方法.把它拿走它的价值.
Scala中的强制转换的字面翻译为asInstanceOf: var x: Object = Array("foo","bar"); var y = x.asInstanceOf[Array[Object]]; >> x: java.lang.Object = Array(foo,bar) >> y: Array[java.lang.Object] = Array(foo,bar) 但是,作为一个有趣的练习,为什么会导致ClassCastException? var x: Object = Array(1,2); var y = x.asInstanceOf[Array[Object]]; 快乐的编码 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- scala – 是否有相当于Java Sound API的东西?
- JMS与WebService应用场景
- 使用axis1.4发布WebService简单示例
- 国土档案管理信息系统【档案著录】-用地监察类档案著录
- angularjs – 如何在浏览器中使用$位置,角度打开新标签?
- twitter-bootstrap – 自定义WYSIHTML5工具栏
- angularjs – 将Ionic Framework或OnsenUI仅用作托管的weba
- angularjs – 以角度$http确定请求超时
- rails 4 中使用 bootstrap的radio button 的形式来提供 单选
- Shell编程中的用户输入处理(4):在shell脚本中,使用read