Scala_练习
package com.lius import java.util /** * Practice */ object finalPractice { /** * 九九乘法表 */ class nNMultipartly(){ def build():String={ var sbf = new StringBuffer() for(a <- 1 to 9){ for(b <- 1 to a){ sbf.append(s"$b * $a = ${a*b}\t") } sbf.append("\r\n") } return sbf.toString; } } /** * 冒泡排序 * @param param */ class maoPaoSort(param:Array[Int]){ var arrayParam = param private def eacheThan(x:Int,y:Int):Array[Int] = {//比较 var result:Array[Int] = Array(x,y); if(result(0)<result(1)){ result(0)^=result(1) result(1)^=result(0) result(0)^=result(1) } return result } def sort():maoPaoSort={ //排序 val sLen = arrayParam.length-1 for(a <- 0 to sLen){ for(b <- 0 to sLen-a) if(sLen>=b+1){ val paramResult = eacheThan(arrayParam(b),arrayParam(b+1)) arrayParam(b) = paramResult(0) arrayParam(b+1) = paramResult(1) } println(s"第${a+1}次排序结果:${util.Arrays.toString(arrayParam)}") } return this } def build():Array[Int]={ //返回 println(s"最终排序结果:${util.Arrays.toString(arrayParam)}") return arrayParam } } //模式匹配 trait moshi{ def work() } object JavaPeople extends moshi{ override def work(): Unit = { println("我是一个Java工程师") } } object PhpPeople extends moshi{ override def work(): Unit = { println("我是一个php工程师") } } object SparkPeople extends moshi{ override def work(): Unit = { println("我是一个Spark工程师") } } def matchTest(x:String) = x match { case "java" => JavaPeople.work() case "php" => PhpPeople.work() case "spark" => SparkPeople.work() case _ => println("I don't know your job") } /** * 判断集合是否对称 * @param param */ class ensureLinkSymmetrical(param:List[String]){ private val inputSource = param private var outputSource = true def ensure():ensureLinkSymmetrical={ val sSize = inputSource.size-1 var isOld = inputSource.size%2==0 var towSize = inputSource.size/2 for(a <- 0 to towSize){ if(a<=sSize-a){ outputSource&= inputSource(a).equalsIgnoreCase(inputSource(sSize-a)) } } return this } def build():Boolean={ return outputSource } } /** * * @param args */ def main(args:Array[String]):Unit={ //九九乘法表 // val nine = new nNMultipartly // print(nine.build()) //冒泡排序 // val score:Array[Int] = Array(67,55,75,87,89,70,99,10) // val mapPao = new maoPaoSort(score) // mapPao.sort().build //模式匹配 // val work01 = "java" // matchTest(work01) // val work02 = "php" // matchTest(work02) // val work03 = "spark" // matchTest(work03) // val work04 = "hehe" // matchTest(work04) //判断集合是否对称 var collectionParam = List("1","2","3","4","4","3","2","1") val classIns = new ensureLinkSymmetrical(collectionParam) println(classIns.ensure().build()) } }
Scala_练习
最新推荐文章于 2022-07-29 22:23:48 发布