news 2026/3/20 18:35:26

Android 开发 - mutableStateListOf 与 mutableListOf

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Android 开发 - mutableStateListOf 与 mutableListOf

mutableStateListOf 与 mutableListOf

1、基本介绍
  1. mutableStateListOf 来自 Jetpack Compose 的运行时库,它是可观察的,列表变化会触发重组,主要用于 UI 状态管理

  2. mutableListOf 来自 Kotlin 标准库,它是不可观察的,列表变化不会触发重组,是通用的集合数据结构

  • 二者都支持列表的标准操作,性能开销上面,mutableStateListOf 开销较高,因为有观察机制
2、演示
  1. 使用 mutableStateListOf,会更新 UI
varfruitList=remember{mutableStateListOf("苹果","香蕉","橙子")}Column{fruitList.forEach{fruit->Text(text=fruit)}Button(onClick={fruitList.add("葡萄")}){Text("添加葡萄")}}
  1. 使用 mutableListOf,不会更新 UI
valfruitList=remember{mutableListOf("苹果","香蕉","橙子")}Column{fruitList.forEach{fruit->Text(text=fruit)}Button(onClick={fruitList.add("葡萄")}){Text("添加葡萄")}}
3、使用 mutableListOf 更新 UI
  1. 如果想让 mutableListOf 更新 UI,使用 mutableStateOf 包装列表,修改时必须赋值新的列表
varfruitListbyremember{mutableStateOf(mutableListOf("苹果","香蕉","橙子"))}Column{fruitList.forEach{fruit->Text(text=fruit)}Button(onClick={valnewFruitList=fruitList.toMutableList()newFruitList.add("葡萄")fruitList=newFruitList}){Text("添加葡萄")}}
  1. 如果修改时没有赋值新的列表,不会更新 UI
varfruitListbyremember{mutableStateOf(mutableListOf("苹果","香蕉","橙子"))}Column{fruitList.forEach{fruit->Text(text=fruit)}Button(onClick={fruitList.add("葡萄")}){Text("添加葡萄")}}
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/3/19 19:29:22

百考通AI:权威AIGC检测,为学术诚信保驾护航

在人工智能技术迅猛发展的今天,AI写作工具已成为众多学生和研究者的重要辅助手段。然而,随着高校和学术机构对AI生成内容的监管日益严格,如何确保学术成果的原创性与真实性,已成为每一位学子必须面对的挑战。无论是毕业论文、学术…

作者头像 李华
网站建设 2026/3/17 4:10:16

高校科研转化新路径:生态协同机制助力学术产业双赢

在科技创新驱动发展的时代,高校作为知识与技术的策源地,其科技成果向产业转化的能力直接关系到区域经济的发展潜力。然而,传统科技成果转化模式中,信息壁垒、供需不对称以及复杂的技术经纪服务流程等问题,成为阻碍高校…

作者头像 李华
网站建设 2026/3/18 16:34:38

构建区域创新生态,科技成果转化的破局之道

在当今全球科技创新迅猛发展的时代背景下,我国各地正加速布局区域创新体系。然而,在这一过程中,科技成果转化却遭遇瓶颈问题。无论是科技成果供需信息的不对称,还是转化渠道不畅通,以及专业化服务能力不足等痛点&#…

作者头像 李华
网站建设 2026/3/17 9:31:23

Docker-in-Docker的安全风险与替代方案

Docker-in-Docker:安全风险深度剖析与现代化替代方案(Sysbox)指南 第一部分:开篇明义 —— 定义、价值与目标 定位与价值 在现代化的软件交付流水线(CI/CD)与复杂多租户开发环境中,Docker-in-Do…

作者头像 李华
网站建设 2026/3/20 0:41:43

AI音乐版权检测系统的技术架构与测试挑战

随着AI生成音乐在流媒体平台占比激增至39%(2025年数据),基于Transformer的版权侵权检测系统成为行业刚需。此类系统通过分析音频信号的微观特征(如谐波结构、时域异常)识别AI生成内容,其测试需覆盖三大核心…

作者头像 李华
网站建设 2026/3/18 18:17:50

LLOOGG.com的网站的使用方法,有没有可以使用的服务,以及接口_blog

LLOOGG.com 极简实时监控:中国开发者使用指北 引言 在网站分析与运维领域,实时性往往是洞察先机的关键。对于广大中国开发者,特别是个人博主与初创团队而言,Google Analytics的复杂与延迟、百度统计的侧重长期趋势,有…

作者头像 李华