scala----常用方法 類的定義
常用方法
1. 聚合常用函式
sum求和 //底層是呼叫的foldLeft
reduce聚合函式 arr.reduce(_+_) //底層呼叫的是reduceLeft
reduceLeft
_代表資料型別
fold(0)(_+_) 55 fold(100)(_+_) 155 fold(1000)(_+_) 1055 //第一個括號是指定了起始值
foldLeft(1)(_+_) //資料型別可以不相同 更加靈活
product相乘
2. mapValues //對值進行操作,再跟值拼接
3. 排序方法
Sorted //升序
Sorted(ordering[Int].reverse) //倒序
nums.sortBy(x=>x) //排序 更加靈活 括號中的函式可以改變排序規則,不可以改變資料型別
SortWith(_>_) //降序
SortWith(_<_) //升序
4. 陣列中取元素方法
take(n) //從陣列中取n個元素,返回的是陣列, 從頭開始不排序
takeRight(n) //陣列中從尾部取n個元素
takeWhile(條件表示式) //從前面開始取,渠道不滿足條件的位置,如果第一個就不滿足條件,就一個都不取
aggregate()()
5. 最大小值
Math.min(_,_) //兩數相比取最小
Math.max(_,_) //兩數相比取最大
6. par //並行化集合
類的定義
類和半生物件中的屬性和方法都可以用訪問許可權修飾符修飾
類和半生物件可以相互訪問private修飾的變數和方法
private[this]如果在類中定義,就只能在類的內容使用
private[this]如果在類中定義,就只能object的內容使用
package cn.doit.com.day02.demo02
/*
類和伴生物件中的屬性和方法都可以用訪問許可權修飾符修飾
類和伴生物件可以相互訪問private修飾的變數和方法
private[this]如果在類中定義,就只能在類的內容使用
private[this]如果在類中定義,就只能object的內容使用
類前面加上private就是包訪問許可權,在當前包和自爆中可以訪問
在類名構面加的private是私有的構造器,只能在半生物件中訪問
*/
//private[day02]包訪問許可權,只能在day02包及其子包中訪問
private[day02] class User {
var name: String = _
//在scala中,如果用private修飾的成員變數,在其他類或者object中就無法訪問了
//private修飾的成員變數只能在類中或者半生物件中使用
private var age: Int = _
//物件私有手段,訪問許可權更加嚴格,只能在類的內部使用[在例項的內部使用]
private[this] var sal = 12000
def printAge():Unit={
println(age)
println(sal)
}
def printSal():Unit={
println(sal)
}
}
/*
伴生物件
1.使用object定義,object的名字和類名一致
2.object和class在同一個.class檔案中
*/
object User{
def main(args: Array[String]): Unit = {
val user = new User
user.name = "wgg"
user.age = 28
user.printAge()
}
}
相關文章
- Java類方法(定義一個工具類,儲存一些常用的方法)Java
- 類的定義
- javaSE-day04--ArrayList基本用方法、類內定義方法和方法過載、靜態方法static(類的方法)、工具方法(static)的定義和使用Java
- String類常用的方法
- 類定義介面
- 面向1-類和物件-方法、new的定義和使用物件
- 【轉】Object類的常用方法Object
- c#抽象類的定義C#抽象
- 方法的作用和定義
- 類定義(class definition)
- 常用的Java類方法【轉載】Java
- Java中Object類的常用方法JavaObject
- Java中Scanner類的常用方法Java
- Java中String類的常用方法Java
- Java中StringBuffer類的常用方法Java
- 重學java之類的定義Java
- Java方法02:方法的定義和呼叫Java
- 方法的定義面試題面試題
- JAVASE常用的類及其方法總結Java
- Java之Thread類的常用方法 .sleep()Javathread
- [Vue] 如何定義全域性的方法?Vue
- php定義常量方法的區別PHP
- java 陣列的定義(宣告)方法Java陣列
- 類的一些常用魔術方法
- ts類介面約束定義
- IDEA2020.2版本設定類和方法的自定義註釋模板Idea
- Retrofit2.5是如何解析在介面類中定義的請求方法?
- JTAG各類介面針腳定義及含義
- 一起Talk IOS吧(第十四回 類中方法的定義和使用)iOS
- iOS-日常開發常用巨集定義iOS
- 方法(函式)的定義與引數函式
- React元件方法的兩種定義方式React元件
- C++學習 類定義(一)C++
- 【iOS】定義@property時常用的修飾詞介紹iOS
- Java集合系列(一):集合的定義及分類Java
- 內部類中的成員的定義和使用
- Spring JPA 定義查詢方法Spring
- Java常用工具類方法整理Java