当前位置: 首页 > news >正文

kotlin: joinToString函数:把集合拼接为字符串

一,功能

功能:实现把集合拼接为字符串的功能

语法:

fun <T> Iterable<T>.joinToString(separator: CharSequence = ", ",prefix: CharSequence = "",postfix: CharSequence = "",limit: Int = -1,truncated: CharSequence = "...",transform: ((T) -> CharSequence)? = null
): String

参数:

  • separator:分隔符,用于在各个元素之间插入一个字符串。默认值为 ", "。

  • prefix:前缀,加在生成的字符串的开头。默认值为 ""。

  • postfix:后缀,加在生成的字符串的结尾。默认值为 ""。

  • limit:限制输出元素的数量。如果集合元素数量超过这个值,那么超出部分将会被 truncated 参数指定的字符串替换。默认值为 -1,表示不限制。

  • truncated:当元素数量超过 limit 参数指定的值时,用于替换多余元素的字符串。默认值为 "..."。

  • transform:一个函数,用于将集合中的每个元素转换为字符串。如果不提供这个参数,那么将直接调用元素的 toString 方法进行转换。

二,例子:

代码:

        //处理按钮点击事件binding.button1.setOnClickListener {val numbers = listOf(1, 2, 3, 4, 5)//无参数println(numbers.joinToString()) // 输出:1, 2, 3, 4, 5//指定分隔符println(numbers.joinToString(separator = "|")) // 输出:1|2|3|4|5//指定前缀后缀println(numbers.joinToString(prefix = "[", postfix = "]")) // 输出:[1, 2, 3, 4, 5]//指定数量println(numbers.joinToString(limit = 3)) // 输出:1, 2, 3, ...//指定表示形式println(numbers.joinToString(transform = { "Number $it" }))// 输出:Number 1, Number 2, Number 3, Number 4, Number 5}

运行结果:

image

三,例子:

代码:

        //处理按钮点击事件binding.button2.setOnClickListener {// 如果不指定分隔符,使用默认参数,元素之间会以逗号加空格分隔val numbers = listOf("one", "two", "three", "four")println(numbers.joinToString()) //one, two, three, four// 可以指定参数 separator, prefix, 以及 postfixprintln(numbers.joinToString(separator = " | ", prefix = "start: ", postfix = ": end"))// start: one | two | three | four: end// 如果要控制集合元素本身的字符串表示形式, 可以指定一个 transform 函数println(numbers.joinToString { it.uppercase() })// ONE, TWO, THREE, FOUR//首字母大写println(numbers.joinToString { it.replaceFirstChar { it.titlecase(Locale.ROOT) } })//One, Two, Three, Four// 对于较大的集合, 可以指定 limit – 结果中包含的最大元素个数.// 如果集合大小超过 limit 值, 所有超过的元素会被替换为 truncated 参数指定的值.val numbers2 = (1..100).toList()println(numbers2.joinToString(limit = 10, truncated = "<...>"))// 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, <...>}

运行结果:

image

 

http://www.sczhlp.com/news/30172/

相关文章:

  • JBoltAI 赋能 CRM 系统:客户跟进情况批量总结功能的实现与价值
  • 网站建设 大公司小公司成人编程培训机构排名前十
  • qq旺旺客服wordpress不能用东莞整站优化
  • 做科技汽车的视频网站有哪些社交媒体营销策略有哪些
  • 福田建网站外包seo引擎优化
  • 微网站怎么做的好处新浪体育nba
  • 电商 网站 设计南宁推广公司
  • 阜新网站建设单位扬州整站seo
  • 做网站公司职员工资厦门seo关键词优化代运营
  • 国产算力的DeepSeek时刻
  • 抢占 AIGS 先机,JBoltAI 框架让 Java 团队在 AI 时代领跑
  • 用 JBoltAI 优化 CRM 客户跟进:批量总结功能的实践价值
  • Adobe InCopy 2025(IC2025)下载安装教程(一键安装包)包含详细图文安装步骤
  • 关于学校的网站模板免费下载百度网站推广教程
  • 妇幼保健院人流价格表搜索引擎关键词优化有哪些技巧
  • 外贸网站建设 如何做河北网站建设公司排名
  • wordpress文章内链指定关键词seo网站外链工具
  • 火车头提取wordpress抓包数据郑州seo关键词优化公司
  • 建设网站的策划书性能优化大师
  • phpcms v9网站建设黄冈网站推广软件视频下载
  • 做h5网站公司天天外链
  • AE 2025下载安装教程(附一键安装包下载)2025最新整理AE 2025详细下载安装步骤
  • DeepSeek FP8针对的下一代国产芯片是哪家?
  • 告别传统开发模式,JBoltAI 框架引领 Java AI 应用进入智能体时代
  • 想让 Java 系统秒变智能?JBoltAI 框架的 AIGS 解决方案太香了
  • 宁波做网站gs网站搭建教程
  • 舟山网站建设公司如何推广网页
  • 网页制作书籍推荐seo推广是什么
  • 深圳网站品牌建设品牌营销平台
  • 自学网站建设要多久网络营销案例分析论文