
package test12
//需求:定义一个名为getMiddleEle的方法
// 用它来获取当前列表的中间位置上的值
// 中间位置的下标 =长度/2
//目标:
// getMiddleEle(List(1,2,3,4,5)) ==> 5/2 =2 ==> 下标为2的元素是:3
// getMiddleEle(List(1,2,3,4)) ==> 4/2 =2 ==> 下标为2的元素是:3
object test {
//定义一个函数格式:
//def 函数名(参数名: 类型): 返回值的类型 ={
//函数体
//}
//List[Int]:List是列表,[Int]是说列表中的每一个元素都是int!
//类型参数 ------泛型(数据类型是变化的)
//(1)可以有多个
//(2)名称合法就行,无固定一般使用T(Type)
//在scala中,用[]表示,在java中,用<>表示
def getMiddleEle[T](list: List[T]):T={
list(list.length/2)
}
def main(args: Array[String]): Unit = {
// val rs1 = getMiddleEle[Int](List(1,2,3,4,5))
// println(rs1)
// val rs2 = getMiddleEle[String](List("a","b","c","d"))
// println(rs2)
// val rs3 = getMiddleEle[Double](List(1.1,2.2,3.3))
// println(rs3)
// }
//理解泛型
//1.与数据类型的区别
// List是数据类型,表示一个例子。[Int]表示泛型,它约定列表中每一个元素都是Int类型
// val l1 = List[Int](1,2,"a")
// l1.foreach(println)
val l1 = List[Int](1, 2)
l1.foreach(println)
}
}