首页 > 编程语言 >Java中的数组长度最大值为什么是 Integer.MAX_VALUE - 8

Java中的数组长度最大值为什么是 Integer.MAX_VALUE - 8

时间:2023-02-23 09:58:11浏览次数:29  
标签:Java MAX VALUE 数组 Integer array

Java中的数组长度最大值为什么是 Integer.MAX_VALUE - 8

/*
	因为 数组容量使用int类型数据进行标识,
	所以我们认为数组容量MAX是 Integer.MAX_VALUE,
	但是在编译器中定义运行,报错说OutOfMemoryError即内存不够。
	因为 JVM 需要为数组的元数据(描述数组属性-长度等)预留空间。
*/
/**
 * The maximum size of array to allocate.
 * Some VMs reserve some header words in an array.
 * Attempts to allocate larger arrays may result in
 * OutOfMemoryError: Requested array size exceeds VM limit
 */
private static final int MAX_ARRAY_SIZE = Integer.MAX_VALUE - 8;


在这里插入图片描述

标签:Java,MAX,VALUE,数组,Integer,array
From: https://www.cnblogs.com/oneblogs/p/17146838.html

相关文章

  • Java速成培训班怎么算是短期的
    Java速成培训班怎么算是短期的,首先我们要对这个速成有一个定义,多长时间算速成,目前市面上的Java培训班针对零基础已经算是速成了,为了达到更好的学习效果,Java培训课程的学......
  • 哪的Java培训班好,看看课程怎么样
    “哪的Java培训班好”这个问题很多想学习Java的人都在问,对于这总问题,大家与其在网上找答案,不如到线下的Java培训班去鉴别,有条件的话带上了解这个行业的朋友一起去。只所以......
  • 线上Java培训哪个好?有什么专业机构可选
    了解互联网行业的同学相比对Java开发技术一定有所了解,这几年,互联网后端的快速发展,企业对于软件开发人才的要求是越来越多了,为此,Java技术也得到了很好的发展,学习的人也在与......
  • 如何开始在Java软件技术培训机构学习
    现在不少年轻人看到Java工程师的发展前景后,都想从事这方面的工作,而想要进入这个行业首先需要具备的就是掌握Java相关的专业技术,但是,绝大多数的同学仅仅是有这个想法,而能力......
  • Java培训班学费一般多少?贵不贵
    随着Java开发技术的影响力扩大,对于这类人才企业给出的待遇是越来越好,从培训机构不断的报名人数上也能看出来了,市面上的相关培训也在不断增加,不过,教学好的机构基本上都集中......
  • 读Java实战(第二版)笔记18_基于Lambda的领域特定语言
    1. 编程语言1.1. 仍然是一门语言1.1.1. 以最清晰、最容易理解的方式传递信息1.2. 代码的易读性和易理解性在软件中的重要性甚至更胜一筹2. 领域特定语言DSL2.1.......
  • JavaBean
    JavaBean实体类JavaBean有特定的写法:必须要有一个无参构造属性必须私有化必须有对应的get/set方法一般用来和数据库的字段做映射ORM:对象关系映射表---->类字......
  • 配置java环境后 Linux报错:bash:ls:command not find 如何解决
    Linux命令行输入命令执行后报“bash:ls:commandnotfound”,这是由于系统PATH设置问题,PATH没有设置正确,系统就无法找到精确命令了。解决办法:1、在命令行中输入:exp......
  • 2月22日javaweb学习之Maven
    Maveb是专门用于管理和构建java项目的工具,它的主要功能有:1.提供一套标准化的项目结构。2.提供一套标准化的构建流程(编译、测试、打包、发布......)3.提供了一套依赖管理......
  • JavaScript中止网络请求
    constcontroller=newAbortController();//1.创建AbortController实例constsignal=controller.signal;//2.创建信号fetch('/some/api',{signal})//3.......