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来说,它是可遍历的。但是它的遍历是遍历单个字母。 所
// 以拉链就针对每个字母来进行。
}