一方面使用在线字典的时候感觉速度不快,另一方面在学习Scala,因此自己用Scala和google-translate-api-java做了一个。用api的确方便,根本不用处理诸如包装,发送,接收,结果解包之类的事情。
package cn.sh.huang.translate
import com.google.api.translate._
import scala.actors.Actor._
import java.io.BufferedReader
import java.io.InputStreamReader
object Test {
def main(args : Array[String]) {
// val prop = System.getProperties
// prop.put("http.proxyHost", "url.here")
// prop.put("http.proxyPort", "8080")
val echoActor = actor {
def execute() {
val onJob = receive {
case "quit" =>
false
case msg : String =>
println(Translate.translate(
msg, Language.ENGLISH,
Language.CHINESE_SIMPLIFIED))
true
}
if (onJob) execute()
}
execute()
}
val reader = new BufferedReader(new InputStreamReader(System.in))
def translate() {
val word = reader.readLine
echoActor ! word
if (word != "quit") translate ()
}
translate()
}
}
使用了Scala的actor机制,好处是查询和返回是异步关系。而且全部使用了函数式的方式,递归。没有while和var。不过似乎有些问题,输入了若干次之后,要等到关闭的一刹那,所有的翻译结果才回来。很搞。感觉似乎不像是哪里没控制好出的问题。不知道是不是因为我的网络有问题。
分享到:
相关推荐
自己用scala实现的朴素贝叶斯算法。最近学习machine learning,由于之前学习了spark,于是使用scala尝试写写代码
差分进化算法的Scala实现_Scala_代码_下载
scala向导前15章翻译,就是scala综合进阶向导的翻译,还不错。
Scala运行于Java平台(Java虚拟机)...Scala的编译模型(独立编译,动态类加载)与Java和C#一样,所以Scala代码可以调用Java类库(对于.NET实现则可调用.NET类库) 。 Scala包中包含了编译器和类库,以BSD许可证发布。 折叠
该demo是基于maven的scala(版本2.11.8)与java相互调用可以运行的最基本的例子。该demo可以导出可运行的jar文件。希望能对大家有帮助。
使用scala实现的maze小游戏,具体的maze类,请查看我的另外一个资源,直接运行,可直接修改成sarsalambda
Scala语法简明教程.pdf
主要介绍了Java 和 Scala 如何调用变参,帮助大家更好的理解和学习Java与Scala,感兴趣的朋友可以了解下
[Manning Publications] Play 框架开发 (Scala 实现) (英文版) [出版日期] 2013年10月11日[图书页数] 328页 [图书语言] 英语[图书格式] PDF 格式
scala语言和python一样都是交互式的语言,操作简单。这是wordcount的scala实现,简单明了,比java实现简单很多,希望对大家有所帮助
使用scala实现dvd系统的管理,新增dvd,删除dvd,外借,归还等模块
完整的ID3决策树算法,采用了scala语言来实现,代码完整。
初始化maze游戏场景,使用java的JFrame实现可视化,以4x4九宫格作为游戏背景
不到一百行的代码教你在spark平台中使用scala实现kmeans算法。简单易懂,大量注释。适合初学者参考理解。本程序在intelliJ IDEA2016.1.1 中编程,运行在spark1.6.1 scala2.10.4本地模式下运行成功。 数据集:(其实...
基于spark-ml,scala实现gbdt 算法,附带libsvm训练集和普通训练集实现,GBDT (Gradient Boosting Decision Tree) 梯度提升迭代决策树。GBDT 也是 Boosting 算法的一种,但是和 AdaBoost 算法不同(AdaBoost 算法...
[Packt Publishing] SBT 入门教程 (Scala 实现) (英文版) [Packt Publishing] Getting Started with SBT for Scala (E-Book) ☆ 图书概要:☆ Equip yourself with a high-productivity work environment using ...
功能:实现google的PageRank算法,带完整的测试数据和结果,java、scala语言版本 ********************************************************* 版本: scala2.10.4 spark 1.6.1 Scala IDE Build id: 4.4.1-vfinal...
响应式架构 消息模式Actor实现与Scala.Akka应用集成 响应式架构 消息模式Actor实现与Scala.Akka应用集成
这个文件是用来在Idea中用于整合Scala实现Spark代码编写的pom配置文件. 内置 JDK规定, Spark-core, SparkSQL, mysql依赖的jar包,SparkStreaming, SparkStreaming + Kafka, 向kafka 生产数据需要包, 连接 Redis 需要...