Scala练习题 LeetCode 9. 回文数

根据这道题意,可以用LeetCode7. 整数反转    的函数来解题:


object TestScala {
  /**
   *
   * @param args
   */
  def main(args: Array[String]):Unit={
    println("hello , scala!")
    println(reverse(1534236469))

    println(isPalindrome(1221))
    println(isPalindrome(1234))

  }

  def reverse(x: Int): Int = {
    var tmp:Int = x
    var res:Long = 0

    var neg : Boolean = false
    if(x < 0){
      neg = true
      tmp = -tmp
    }

    while(tmp > 0){
      res = res * 10 + tmp%10
      if(res > Int.MaxValue){
        return 0
      }
      tmp = tmp / 10
    }

    if(neg){
      res = -res
    }

    var result:Int = Integer.valueOf(res.toString)
    result

  }

  def isPalindrome(x: Int): Boolean = {
    if(x < 0){
      return false
    }
    var rvx:Int = reverse(x)
    if(rvx == x){
      return true
    }else{
      return false
    }

  }


}

发布了164 篇原创文章 · 获赞 64 · 访问量 11万+

猜你喜欢

转载自blog.csdn.net/qq_20417499/article/details/104151012