Subscribed unsubscribe Subscribe Subscribe

この前のやつをもうちょいscalaっぽく?

Scala

ポイント

  • importまとめた
  • queryのvarをvalに変えた
  • if-elseをmatchにした

どうでしょう。
match便利ね。


よくわからんなー調べなきゃというところ

  • JavaのListの扱い
import scala.collection.JavaConversions._
import java.util.List
import twitter4j.{TwitterFactory, Twitter, Tweet, QueryResult, Query}

object SimpleTwitterSearchApp {
  def search(word: String = "#rpscala"): List[Tweet] = {
    val query = new Query
    query.setQuery(word)
    val twitter = new TwitterFactory().getInstance()
    val results = twitter.search(query)
    val tweets = results.getTweets
    tweets
  }


  def printTweets(tweets: List[Tweet]) = {
    for (tweet <- tweets) {
      print("@" + tweet.getFromUser + ": ")
      println(tweet.getText)
    }
  }


  def main(args: Array[String]){
    val tweets = args.length match {
      case 0 => search()
      case _ => search(args(0))
    }
    printTweets(tweets)
  }

}