学习scala的点点滴滴(2)-与java交互
2016-03-15 09:38
381 查看
scala的一大优点就是可以和java无缝交互。
你可以使用java.long包下的所有类,因为在scala中该包是默认自动导入的。但是其他的包你需要自己显示的导入。
例如:在scala中操作java中的常用的工具类,Date ,DateFormat。
代码中首行是import 语句,和 java 中的用法十分相似而又有点不同,scala 中的 import 语句确更加强大,例如导某个包下的两个类,可以想上面代码中那样写,不必像java那样写成2行。
如果需要导入某个包下的所有类,可以写成这样:
注意这里用的是 _ ,而不是 * ,在java中我们都是用 * 的。(*是scala的一个有效标识符)
scala不仅可以调用java的工具类,还可以继承和实现java的类和接口。
你可以使用java.long包下的所有类,因为在scala中该包是默认自动导入的。但是其他的包你需要自己显示的导入。
例如:在scala中操作java中的常用的工具类,Date ,DateFormat。
import java.util.{Locale,Date} import java.text.DateFormat._ object DateDemo extends App { val date = new Date() val df = getDateInstance(LONG, Locale.SIMPLIFIED_CHINESE) val str = "hello scala" println(str.isEmpty) //默认导入java.lang包 println(date) println(df.format(date)) }
代码中首行是import 语句,和 java 中的用法十分相似而又有点不同,scala 中的 import 语句确更加强大,例如导某个包下的两个类,可以想上面代码中那样写,不必像java那样写成2行。
import java.util.{Locale,Date}
如果需要导入某个包下的所有类,可以写成这样:
import java.text.DateFormat._
注意这里用的是 _ ,而不是 * ,在java中我们都是用 * 的。(*是scala的一个有效标识符)
scala不仅可以调用java的工具类,还可以继承和实现java的类和接口。
class A extends Runnable { override def run() { println("class A implements Runnable of java interface") } } object ExtendsAndImplementDemo extends App { val a = new A var thread = new Thread(a) thread.start(); }
相关文章推荐
- Eclipse问题 A cycle was detected in the build path of project: XXX
- Java Collection List Set Map 的区别
- Struts2、Spring3.2.4、Mybatis和Mysql数据库整合开发
- eclipse 编码设置
- 原 Eclipse Luna安装Weblogic Server Tools插件及配置Weblogic
- javax.el.PropertyNotFoundException: Property 'Name' not found on type com.min.test.User
- maven web 项目中启动报错java.lang.ClassNotFoundException
- java JVM 垃圾回收算法不完全总结
- JavaBean规范
- JAVA_java静态导入
- Java Arraylist知识
- spring下调用ajax进行异步检验,后台程序调试一致成功,但是返回前台就是不执行success
- Java 集合框架
- javaweb+mysql+c3p0ajax实现三级联动
- struts2实现ajax校验的2种方法
- struts2实现ajax校验的2种方法
- struts2实现ajax校验的2种方法
- 解析Java的可变长参数列表及其使用时的注意点
- JVM内幕:Java虚拟机详解
- Java 正则表达式[转载]