Scala编程入门---数组操作之数组转换

使用yield和函数式编程转换数组

//对Array进行转换,获取的还是Aarry
val a = Array(1,2,3,4,5)
val a2 = for(ele <- a) yield ele * ele

//对ArrayBuffer进行转换,获取的还是ArrayBuffer
val b = ArrayBuffer[Int]()
b+=(1,2,3,4,5)
val b2=for(ele <- b) yield ele*ele
//结合if守卫, 仅转换需要元素
val a3= for(ele <- b if ele % 2==0) yield ele*ele
//使用函数式编程转换数组(通常会用第一种方式)
a.filter(_%2==0).map(2*_)
a.filter{_%2==0}.map{2*_}
时间: 2024-11-07 14:45:34

Scala编程入门---数组操作之数组转换的相关文章

Scala 数组操作之数组转换

使用yield和函数式编程转换数组 // 对Array进行转换,获取的还是Array val a = Array(1, 2, 3, 4, 5) val a2 = for (ele <- a) yield ele * ele // 对ArrayBuffer进行转换,获取的还是ArrayBuffer val b = ArrayBuffer[Int]() b += (1, 2, 3, 4, 5) val b2 = for (ele <- b) yield ele * ele // 结合if守卫,仅转

黑马程序猿——26,基本数据操作流,字节数组操作流,转换流,编码表

-----------android培训.java培训.java学习型技术博客.期待与您交流! ------------ 黑马程序猿--26, DataInputStream,DataOutputStream, ByteArrayInputStream,ByteArrayOutputStream, InputStreamReader,OutputStreamWriter,编码表 /* DataInputStream和DataOutputStream 能够更加操作基本数据类型的流 注意这里是Dat

黑马程序员——26,基本数据操作流,字节数组操作流,转换流,编码表

------<ahref="http://www.itheima.com" target="blank">Java培训.Android培训.iOS培训..Net培训</a>.期待与您交流! ------- 黑马程序员--26, DataInputStream,DataOutputStream, ByteArrayInputStream,ByteArrayOutputStream, InputStreamReader,OutputStreamW

Scala编程--基本类型和操作

如果你熟悉Java,你会很开心地发现Java基本类型和操作符在Scala里有同样的意思.然而即使你是一位资深Java开发者,这里也仍然有一些有趣的差别使得本章值得一读.因为本章提到的一些Scala的方面实质上与Java相同,我们插入了一些注释,Java开发者可以安全跳过,以加快你的进程.本章里,你会获得Scala基本类型的概观,包括String和值类型Int,Long,Short,Byte,Float,Double,Char还有Boolean.你会学到可以在这些类型上执行的操作,包括Scala表

Scala编程入门---Map与Tuple

创建Map //创建一个不可变的Map val ages = Map("Leo" -> 30,"Jen" ->25,"Jack" ->23) ages("Leo") =31 //创建一个可变的Map val ages =scala.collection.mutable.Map("Leo" ->30,"Jen" ->25,"Jack" -&

js数组操作-打乱数组

<style> html, body { margin: 0; padding: 0;} div span { display: inline-block; width: 25px; height: 25px; background: red; } </style> <div id="wrap"> <span></span> <span></span> <span></span>

记一次数组操作:数组A根据数组B排序

前言 最近遇到一个比较坑的事,应该也算是我自己平时观察不仔细的锅:在SQL中,如果使用in的字段是有设置BTREE索引,且为数字.查询的结果会自动根据索引列升序排序. SELECT * FROM city WHERE ID IN (2,7,10,1,30,9,53) 而这并不是我想要的数据顺序,所以只能去重新调整顺序.ps:这里是通过数组手动排序,也可以在sql里通过order by feild保证顺序. 解决 首先将问题简化一下:假设我们现有一个一维数组$arr1,一个多维数组$arr2,现在

Scala编程入门---面向对象编程之Trait

Scala中Trait是一种特殊概念 首先我们可以将Triat做为接口来使用,此时的Triat就与java中的接口非常相似 在Triat中可以定义抽象方法,就与抽象类中的抽象方法一样,只要不给出具体的实现即可 类可以使用extend是关键字来继承Triat,注意这里不是Implement,而是extends,在Scala中没有Implement的概念,无论是继承还是Triat都是extends 类继承Triat后,必须实现其中的抽象方法,实现是不需要override关键字 Scala不支持对类进

Scala编程入门---面向对象编程之Trait高级知识

trait调用链 Scala中支持让类继承多个Trait后,依次调用多个Trait中的同一个方法,只要让多个trait的同一个方法中,在最后都执行super.方法即可 类中调用多个trait中都有这个方法时,首先会从最右边的trait的方法开始执行,然后依次往左执行,形成一个调用链条 这种特性非常强大,其实就相当于设计模式中的责任链模式的一种具体实现依赖 trait Handle{ def handle(data:String){} } trait DataValidHandler extend