今天上网查了一下,各种说法都有,这个问题似乎总困扰我们Java初学者,无奈,只好自己试了一下,以下是我的测试代码,如果有错误,还望不吝赐教!

使用eclipse默认的vm arguments,运行以下代码:

public static void main(String[] args) {

byte[] array=new byte[61858764];

//short[] shortArray=new short[30929382];

//int[] intArray=new int[15464691];

//long[] longArray=new long[7732345];

}

成功,没有报错,可知在eclipse默认的vm arguments下,byte数组的最大长度是61858764,将近60M。

由于short的长度比byte大一倍,所以short数组的最大长度是30929382,是byte数组最大长度的一半,

以此类推,int数组最大长度是15464691,long数组最大长度是7732345

我以为这就是最终结果,后来突然想起修改虚拟机的最大内存,也是这个结果吗?

我把eclipse的vm arguments设置修改为:-Xms256M -Xmx768M

再次测试代码,发现byte数组的最大长度可以更长,

通过Windows任务管理器可知,运行代码的javaw.exe进程占用的内存也更大(废话,呵呵)

到此为止,应该可以得出结论,通过修改虚拟机的最大内存,java整型数组的最大长度可以很长,但到底有多长?(肯定比内存小)

我试过定义一个byte数组的长度为618587640,将近600M,没有报错,更长的数组似乎没有意义,我也没有测试。

ps:以上测试,我只是定义这么长的数组,并没有对这些数组进行操作, 所以不敢保证实际操作数组时不报错(我偷懒了)

而且,我只是对整型数组进行测试,没有对其他类型数组测试,不敢保证其他类型数组是否也符合这个结论 (又偷懒了)

应该是与内存有关系,数组长度参数是int,所以理论上最多个数是Integer.MAX_VALUE

java数组最大长度_Java整型数组的最大长度到底有多长?相关推荐

  1. Java反射修改返回值_java反射调用时如果返回值是整型数组怎么处理?

    想通过java的反射功能将javaBean转换成map: public static Map toMap(Object javaBean) { Map result = new HashMap< ...

  2. 数组-接口2-参数为一个整型数组和数组长度的整数(该数组输入和运算结果),再加一个整数;预期结果是一个整型数组

    测试接口的代码说明 适用接口:参数为一个整型数组和数组长度的整数(该数组输入和运算结果),再加一个整数:预期结果是一个整型数组 测试接口的具体代码如下: 注意红色字体,用后续小节中的接口进行替换,进行 ...

  3. c语言去掉数组中重复的,C语言删除无序整型数组中的重复元素及时间复杂度

    数组重复的问题在任何编程中都会有碰到了,这里介绍C语言删除无序整型数组中的重复元素及时间复杂度,希望对各位有帮助. 遇到一个题,大概要求是写一个函数处理来去掉一个无序的整型数组(例如int i_arr ...

  4. c定义一个整型数组_滨州学院C语言作业讲解有序数组插入

    点击蓝字 关注我们 + 滨州学院C语言作业详解 [问题描述]一个长度为11的整型数组中存放有10个从小到大排好序的整数:1 3 5 10 23 100 180 200 350 500.输入一个x,把它 ...

  5. python fun函数、求4x4整型数组的主对角线元素的和_求一个4×4的整型二维数组主对角线元素之和...

    展开全部 下面是Java语言编写一个计算4*4整型数组对角线636f70793231313335323631343130323136353331333431353338元素和的代码: import j ...

  6. 指针||指针和数组||指针和函数||指针、数组、函数 案例描述:封装一个函数,利用冒泡排序,实现对整型数组的升序排序

    指针 指针的基本概念 指针的作用: 可以通过指针间接访问内存 内存编号是从0开始记录的,一般用十六进制数字表示 可以利用指针变量保存地址 指针变量的定义和使用 指针变量定义语法: 数据类型 * 变量名 ...

  7. C语言试题三十五之找出一维整型数组元素中最大的值和它所在的下标,最大的值和它所在的下标通过形参传回。主函数中x是数组名,n 是x中的数据个数,max存放最大值,index存放最大值所在元素的下标。

    1. 题目 请编写一个函数function,它的功能是:找出一维整型数组元素中最大的值和它所在的下标,最大的值和它所在的下标通过形参传回.主函数中x是数组名,n 是x中的数据个数,max存放最大值,i ...

  8. 编写一个函数get_average()获取整型数组元素的平均值。要求这个函数既可以用来求一维数组元素的平均值,也可以求二维数组元素的平均值。

    题目内容: 编写一个函数get_average()获取整型数组元素的平均值.要求这个函数既可以用来求一维数组元素的平均值,也可以求二维数组元素的平均值.在main()函数中通过具体的一维数组Array ...

  9. 一个整型数组里除了两个数字之外,其他的数字都出现了两次。请写程序找出这两个只出现一次的数字

    package demo;import java.util.Arrays;/** 题目描述 一个整型数组里除了两个数字之外,其他的数字都出现了两次.请写程序找出这两个只出现一次的数字.*/ //num ...

最新文章

  1. [bzoj2333] [SCOI2011]棘手的操作 (可并堆)
  2. Go微服务报错protoc-gen-go: unable to determine Go import path for
  3. serv-u无法自动启动:无法开始服务器!服务器执行缺少
  4. c语言统计数字字母个数,请问这个用c怎么做:输入一串字符,分别统计其中数字和字母的个数...
  5. 教你一招:职场程序员,如何在人工智能时代做好职场发展规划?
  6. java能看懂代码不会写_为什么很多学习Java的人能看懂代码,但就是不会写!
  7. Spark 之 故障排除(二)
  8. 【oracle11g,17】存储结构: 段的类型,数据块(行连接、行迁移,块头),段的管理方式,高水位线...
  9. 两个类似的ViewModel一个可以重写事件,另一个不能重写事件,是哪里出了错。...
  10. postman 解决Could not send request
  11. PDP上下文和PDP地址
  12. 如何在Jetson NANO上安装无线WIFI模块
  13. Simulink仿真入门到精通(十七) Simulink代码生成技术详解
  14. 怎样将表格拆分为两个
  15. java地理坐标转屏幕_(转)经纬度坐标转换为屏幕坐标
  16. FCN(全卷积神经网络)
  17. 系统校验矩阵怎么求_软考高级架构师:计算机系统基础知识
  18. 考研政治——马克思原理唯物论之意识观
  19. SDL解析——SDL简介
  20. Discus 论坛 在 pc 电脑上 访问手机版 ( mobile ) 和 触屏版(touch)设置

热门文章

  1. DM8达梦数据库文件管理
  2. excel取消多列合并单元格并填充内容
  3. 信息收集之censys
  4. 图的深度优先遍历(DFS)和广度优先遍历(BFS)非递归实现C++
  5. matlab-二值化抠图
  6. 2017微信数据报告:日活跃用户达9亿、日发消息380亿条
  7. JSE基础---基础小算法
  8. ftp 550 Failed to change directory
  9. php 怎样取时间的年月日,php如何获取年月日的时间戳以及日期的方法
  10. vue+ele启用停用