当前位置:网站首页>学习记录并且简单分析
学习记录并且简单分析
2020-11-08 15:22:00 【程序猿欧文】
学习记录并且简单分析
记录学习遇到的困难,一个小白!
本人基本没有读过源码,纯小白一个,写这篇文章纯属是为了提高自己!!!希望各位积极指出错误。
好奇的我翻看了Integer.valueOf()
方法源码
public static Integer valueOf(int i) { if (i >= IntegerCache.low && i <= IntegerCache.high) return IntegerCache.cache[i + (-IntegerCache.low)]; return new Integer(i); }
首先参数解释:
static final int low = -128;static final int high;static final Integer[] cache;static Integer[] archivedCache;
high没有赋值,所以我们继续跟踪到high属性
static { int h = 127; //启动时如果指定-Djava.lang.Integer.IntegerCache.high=XXX(自己输入一个数据)参数 //将会执行下面的语句,则动态的设置h是127还是设置的输入数据 String integerCacheHighPropValue = //该方法是通过传递一个key,获取启动时手动设定的数值 VM.getSavedProperty("java.lang.Integer.IntegerCache.high"); if (integerCacheHighPropValue != null) { try { h = Math.max(parseInt(integerCacheHighPropValue), 127); // // public static int max(int a, int b) { // return (a >= b) ? a : b; // } // Maximum array size is Integer.MAX_VALUE //32位系统2147483647=2^32 h = Math.min(h, Integer.MAX_VALUE - (-low) -1); } catch( NumberFormatException nfe) { // If the property cannot be parsed into an int, ignore it. } } //找到high属性的值由h局部属性赋值 high = h; // Load IntegerCache.archivedCache from archive, if possible VM.initializeFromArchive(IntegerCache.class); int size = (high - low) + 1;//可以存256个数。 //至于为啥是256?这里我不讲述,建议自己去搜索下计算机存放数据相关的概念! // Use the archived cache if it exists and is large enough.........
版权声明
本文为[程序猿欧文]所创,转载请带上原文链接,感谢
https://my.oschina.net/mikeowen/blog/4708221
边栏推荐
- nat转换的ip跟端口ip不相同的解决方法
- .NET 大数据量并发解决方案
- Improvement of rate limit for laravel8 update
- 新型存算一体芯片诞生,利好人工智能应用~
- 非常规聚合问题举例
- What is the database paradigm
- 漫画|讲解一下如何写简历&项目
- 阿里撕下电商标签
- Flink: from introduction to Zhenxiang (6. Flink implements UDF function - realizes more fine-grained control flow)
- Leancloud changes in October
猜你喜欢
用科技赋能教育创新与重构 华为将教育信息化落到实处
rabbitmq(一)-基础入门
啥是数据库范式
10个常见的软件架构模式
How to write a resume and project
Android Basics - check box
华为在5G手机市场占据绝对优势,市调机构对小米的市占出现分歧
Tencent, which is good at to C, how to take advantage of Tencent's cloud market share in these industries?
我用 Python 找出了删除我微信的所有人并将他们自动化删除了
[Python 1-6] Python tutorial 1 -- number
随机推荐
Stm32uberide download and install - GPIO basic configuration operation - debug (based on CMSIS DAP debug)
wanxin finance
[Python 1-6] Python tutorial 1 -- number
PMP心得分享
Windows下快递投递柜、寄存柜的软件初探
阿里云加速增长,进一步巩固领先优势
Millet and oppo continue to soar in the European market, and Xiaomi is even closer to apple
Tencent, which is good at to C, how to take advantage of Tencent's cloud market share in these industries?
Flink from introduction to Zhenxiang (10. Sink data output elasticsearch)
nat转换的ip跟端口ip不相同的解决方法
PMP考试通过心得分享
What is SVG?
laravel8更新之维护模式改进
AI周报:允许“员工自愿降薪”;公司回应:员工内心高兴满意;虎牙HR将员工抬出公司;瑞典禁用华为中兴5G设备
擅长To C的腾讯,如何借腾讯云在这几个行业云市场占有率第一?
适合c/c++新手学习的一些项目,别给我错过了!
阿里撕下电商标签
Suitable for C / C + + novice learning some projects, do not give me to miss!
Alibaba cloud accelerates its growth and further consolidates its leading edge
I used Python to find out all the people who deleted my wechat and deleted them automatically