scala-map

object ScalaTest extends App {
  override def main(args: Array[String]): Unit = {
    val a=Array(1,98,4,2,5,7,7,89,3)
    val b = reverArray(a)
    b.foreach(println)
  }

  def reverArray(arr:Array[Int])={

    for( i <- 0 until arr.length) yield{
      if(i<(arr.length-1) && i%2 == 0){
        val t=arr(i)
        arr(i)=arr(i+1)
        arr(i+1)=t
      }else{
      }
      arr(i)

    }
  }
}
def sigNumArr(args:Array[Int])={

  val buf = new ArrayBuffer[Int]()
  buf ++= (for (i <- args if i>0) yield  i)
  buf ++= (for (i <- args if i<=0) yield  i)

  buf.toArray
}
def timeZone2()={
  val arr = java.util.TimeZone.getAvailableIDs()
  val tmp = (for(i <- arr if i.startsWith("America/"))yield{
    i.drop("America/".length)
  })
  scala.util.Sorting.quickSort(tmp)
  tmp
}

object ScalaTest2 extends App {
  override def main(args: Array[String]): Unit = {

    val in = new Scanner(new File("/Users/eoino1/Downloads/scalatest/src/main/scala/test.txt"))
    val  in2 = Source.fromFile("/Users/eoino1/Downloads/scalatest/src/main/scala/test.txt").mkString
    //print(in2)
    var tokens = in2.split("\\s+")
    val map=new mutable.HashMap[String,Int]()
    for(key <- tokens){
      map(key) = map.getOrElse(key,0)+1
    }
    println(map.mkString(","))
  }
}
import java.io.{File, FileFilter}
import java.util
import java.util.Scanner

import scala.io.Source
import scala.collection.mutable
import scala.collection.mutable.ArrayBuffer
import scala.collection.JavaConversions.mapAsScalaMap
import scala.collection.JavaConversions.propertiesAsScalaMap
import java.util.Calendar._
object ScalaTest2 extends App {
  override def main(args: Array[String]): Unit = {

    //test test ttt test tttt ttt t test ssss s ssss
    val in = new Scanner(new File("/Users/eoino1/Downloads/scalatest/src/main/scala/test.txt"))
    val  in2 = Source.fromFile("/Users/eoino1/Downloads/scalatest/src/main/scala/test.txt").mkString
    //print(in2)
    var tokens = in2.split("\\s+")
    val map=new mutable.HashMap[String,Int]()
    for(key <- tokens){
      map(key) = map.getOrElse(key,0)+1
    }
    println(map.mkString(","))
    //val map2 = scala.collection.immutable.HashMap[String,Int]()
    //val map2 = Map[String,Int]()
    var map2 = scala. collection.immutable.Map[String,Int]()
    for(key <- tokens){
      map2 += (key ->(map2.getOrElse(key,0)+1))
    }
    println(map2)
    var map3 = scala. collection.immutable.SortedMap[String,Int]()
    for(key <- tokens){
      map3 += (key ->(map3.getOrElse(key,0)+1))
    }
    println(map3)

    val map4:scala.collection.mutable.Map[String,Int]=new util.TreeMap[String,Int]

    for(key <- tokens){
      map4(key) = map4.getOrElse(key,0)+1
    }
    println(map4.mkString(","))

    val map5 = new mutable.LinkedHashMap[String,Int]
    map5 += ("Monday"->MONDAY,"Tuesday"->TUESDAY,"Wednesday"->WEDNESDAY,"Thursday"->THURSDAY)
    map5 += ("Friday"->FRIDAY,"Saturday"->SATURDAY,"Sunday"->SUNDAY)

    println(map5.mkString(","))

    val map6:scala.collection.Map[String,String] = System.getProperties()
    val keys = map6.keySet
    print(keys.mkString(","))
    val keyLengths = for(key <- keys) yield key.length
    val maxKeyLength = keyLengths.max
    for(key<-keys) {

      print(key)
      print(" " * (maxKeyLength - key.length))
      print(" | ")
      println(map6(key))
    }

    val a=Array(1,0,4,-2,5,0,7,-9,3,-98)
    println(minmax(a))

    println(a.mkString(","))
    println(Lteqgt(a,0))
  }

  def minmax(arr:Array[Int]) = {
    (arr.min,arr.max)
  }
  def Lteqgt(values:Array[Int],v:Int)={
    val buf = values.toBuffer
    (buf.count(_ < v),buf.count(_ == v),buf.count(_ > v))
  }

//  GenIterable是可遍历对象需要包含的trait,对于String来说,它是可遍历的。但是它的遍历是遍历单个字母。 所
//  以拉链就针对每个字母来进行。
}

猜你喜欢

转载自blog.csdn.net/strideahead/article/details/82055996
今日推荐