45_集合_属性&操作

ADT 基本属性&操作
* 1. 获取集合长度
* 2. 获取集合大小
* 3. 循环遍历集合
* 4. 迭代器
* 5. 生成字符串
* 6. 是否包含
* */
复制代码
/*
*  ADT 基本属性&操作
*     1. 获取集合长度
*     2. 获取集合大小
*     3. 循环遍历集合
*     4. 迭代器
*     5. 生成字符串
*     6. 是否包含
* */
object ADT extends App {
  var arr = Array(1, 2, 3, 4, 5)
  var list = List(1, 2, 3, 4, 5)
  var map = Map("x" -> 1, "y" -> 2, "z" -> 3, "h" -> 4)
  var tuple = (1, "2", 3, "4")
  //1. 获取集合长度
  println(arr.length)
  println(list.length)
  //println(map.length) map无length
  //println(tuple.length) tuple无length

  println("=================")
  //2. 获取集合大小
  println(arr.size) //调用length方法
  println(list.size) //调用length方法
  println(map.size)
  //println(tuple.size) tuple无size

  println("=================")
  //3. 循环遍历集合
  for (e <- arr) printf(s"${e}-")
  for (e <- list) printf(s"${e}-")
  for (e <- map) printf(s"${e}-")

  //for (e <- tuple.productIterator) printf(s"${e}-")
  println("===================")

  def show(e: Int) = printf(s"${e}#")

  def show(e: (String, Int)) = printf(s"${e._1} : ${e._2}#")

  arr.foreach(show)
  list.foreach(show)
  map.foreach(show)

  println("===============")
  //4. 迭代器
  var arr_iter = arr.iterator
  var list_iter = list.iterator
  var map_iter = map.iterator
  var tuple_iter = tuple.productIterator
  println(arr_iter)
  println(list_iter)
  println(map_iter)
  println(tuple_iter)

  //5. 生成字符串
  println(arr.mkString("#"))
  println(list.mkString("#"))
  println(map.mkString("#"))
  //println(tuple.mkString("#"))

  //6. 是否包含
  println(arr.contains(1))
  println(list.contains(1))
  println(map.contains("x")) //是否包含指定key
  //println(tuple.contains)

}
复制代码

 

posted @   学而不思则罔!  阅读(38)  评论(0编辑  收藏  举报
编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· 字符编码:从基础到乱码解决
· SpringCloud带你走进微服务的世界
点击右上角即可分享
微信分享提示