首页 > 其他分享 >使用list和数组保存数据的差别

使用list和数组保存数据的差别

时间:2022-12-05 14:23:08浏览次数:47  
标签:差别 占用 list 保存 内存 数组 数据 1000

在上位机开发曲线供能时遇到一个疑惑的问题,但又感觉这个问题太基础,想求证一下。

需求:一共有1000个模拟量数据,每个数据记录600个点作为一组数据曲线,那么这1000个模拟量需要多少内存?

 


 

方法1,使用数组保存数据:

 

  

 运行时,查看vs右边的进程内存发现开始时是13M内存,全部数据加载完成后是15M数据;

计算每个Float数据大约占用((15-13)*1024*1024)/(1000*600)=3.5,大约3.5个字节,由于13M内存和15M内存应该不是准确的内存,实际的结果应该是4字节,符合1个float数据占用4字节的定义。

 


 

第二种方法,使用list保存数据

 

 

 运行时,开始内存占用同样是13M,全部数据加载完成后是21M数据;

计算:((21-13)*1024*1024)/(1000*600)=13.98,

大约每保存一个float数据需要占用14个字节,大约是数组保存数据的3倍。


 

结论:

如果要考虑尽量节省内存占用,应该使用数组保存数据;

如果考虑使用方便可以使用list。

不过,保存1000个数据(每个数据600个点),使用list占用8M的数据也不是特别大,对于一般上位机项目这个内存开销还是可以接受的。

 

标签:差别,占用,list,保存,内存,数组,数据,1000
From: https://www.cnblogs.com/hanzq/p/16952158.html

相关文章

  • HACKTHEBOX VM LIST
    LinuxBoxes:WindowsBoxes:MorechallengingthanOSCP,butgoodpractice:LamelegacyJeeves[Windows]brainfuckBlueBart[Windows]shockerDevel......
  • vba-ArrayList
    TIListBox.MultiSelect=1TIListBox.ListStyle=1TIListBox.ColumnWidths=62TIListBox.ColumnCount=1Dimarr,brrC_Controlarr,b......
  • DevExpress 给TreeList添加右键菜单
    只有在右击节点时才会触发privatevoidtreeList1_MouseDown(objectsender,MouseEventArgse){if(e.Button==MouseButtons.Right)......
  • 操作Devexpress treelist中的项
    如果需要在单元格添加时则用TreeList如果只是单纯读取数据或检索数据时则用GridControl​​​​1.如果点击添加时则添加TreeList的节点:protectedinternalvoidbtnAdd_Cli......
  • JAVASCRIPT数组小结
    ​数组是值的有序集合。每个值叫做一个元素,而每个元素在数组中有一个位置,以数字表示,称为索引。JavaScript数组是无类型的,数组元素可以是任意类型,并......
  • js多个(N)个数组的的元素组合排序算法,多维数组的排列组合或多个数组之间的排列组合
    现在有一批手机,其中颜色有['白色','黑色','金色','粉红色'];内存大小有['16G','32G','64G','128G'],版本有['移动','联通','电信'],要求写一个算法,实现[['白色','16G','移动'......
  • 数组排序,自己内部会调整,数组也是引用类型
    Java的基本数据类型有8种,分别是:byte(位)、short(短整数)、int(整数)、long(长整数)、float(单精度)、double(双精度)、char(字符)和boolean(布尔值)。数组是引用类型 int[] arr2 = {......
  • 013.注入集合对象(list、set、map、properties)
    1.注入list  2.注入set(不允许重复)  3.注入Map  4.注入Properties ......
  • React中的函数组件详解
    转载来自(47条消息)React中的函数组件详解_『荼』的博客-CSDN博客_react函数组件1.创建方式//写法一constHello=(props)=>{return<div>{props......
  • 力扣 leetcode 209. 长度最小的子数组
    问题描述给定一个含有n个正整数的数组和一个正整数target。找出该数组中满足其和≥target的长度最小的连续子数组[numsl,numsl+1,...,numsr-1,numsr],并返......