博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
List嵌套List数据,全部List数组一起更新问题
阅读量:2051 次
发布时间:2019-04-28

本文共 1412 字,大约阅读时间需要 4 分钟。

开发中嵌套list数组碰到如下问题。比如说我是想做到list数组里有10个list<int>数组,每一个数组里的值是1,2,3,4,5,6,7,8,9,10

如下代码:

List
> listlist = new List
>();private void Form1_Load(object sender, EventArgs e){ for (int i = 0; i < 10; i++) { List
list = new List
(); for (int j = 0; j < 10; j++) { list.Add(j); } listlist.Add(list); list.Clear(); }}

可是设断点到最后会发现,listlist数组的count是有10个没问题,但是里面的List<int>的值不对,List<int>的count都是0。

这是因为使用局部list变量添加到全局变量listlist数组中,全局变量listlist数组中的值是根据局部变量list的值实时改变的,只要局部变量发生改变,全局变量也会发生改变。

修改后代码如下:只需要把list.Clear()方法删除,如果说自己程序中需要用到list.Clear()方法不能删除,也可以再新建个数组进行遍历,但是不要再把它Clear哦!

List
> listlist = new List
>();private void Form1_Load(object sender, EventArgs e){ for (int i = 0; i < 10; i++) { List
list = new List
(); for (int j = 0; j < 10; j++) { list.Add(j); } listlist.Add(list); }}

或者

List
> listlist = new List
>();private void Form1_Load(object sender, EventArgs e){ for (int i = 0; i < 10; i++) { List
list = new List
(); List
zanshi = new List
(); for (int j = 0; j < 10; j++) { list.Add(j); } foreach (var item in list) { zanshi.Add(item); } listlist.Add(zanshi); list.Clear(); }}

 

转载地址:http://euulf.baihongyu.com/

你可能感兴趣的文章
Intellij IDEA使用(二)—— 在Intellij IDEA中配置JDK(SDK)
查看>>
Intellij IDEA使用(三)——在Intellij IDEA中配置Tomcat服务器
查看>>
Intellij IDEA使用(四)—— 使用Intellij IDEA创建静态的web(HTML)项目
查看>>
Intellij IDEA使用(五)—— Intellij IDEA在使用中的一些其他常用功能或常用配置收集
查看>>
Intellij IDEA使用(六)—— 使用Intellij IDEA创建Java项目并配置jar包
查看>>
Eclipse配置错误 —— Syntax error, annotations are only available if source level is 1.5 or greater
查看>>
Eclipse使用(十)—— 使用Eclipse创建简单的Maven Java项目
查看>>
Eclipse使用(十一)—— 使用Eclipse创建简单的Maven JavaWeb项目
查看>>
Intellij IDEA使用(十三)—— 在Intellij IDEA中配置Maven
查看>>
面试题 —— 关于main方法的十个面试题
查看>>
集成测试(一)—— 使用PHP页面请求Spring项目的Java接口数据
查看>>
使用Maven构建的简单的单模块SSM项目
查看>>
Intellij IDEA使用(十四)—— 在IDEA中创建包(package)的问题
查看>>
Redis学习笔记(四)—— redis的常用命令和五大数据类型的简单使用
查看>>
深入分析JavaWeb技术内幕(一)—— 深入Web请求过程
查看>>
深入分析JavaWeb技术内幕(二)—— 深入分析Java I/O的工作机制
查看>>
使用Java将PDF解析成HTML页面进行展示并从页面中提取Json数据设置到Table中
查看>>
Redis学习笔记(五)—— 在Linux下搭建Redis集群
查看>>
Redis学习笔记(六)—— 解决安装ruby出现的问题:redis requires Ruby version &amp;gt;= 2.2.2.
查看>>
从原理上搞懂编码——究竟什么是编码?什么是解码?什么是字节流?
查看>>