首页编程java编程java int在内存什么区别?int和integer所占内存大小分别是多少

java int在内存什么区别?int和integer所占内存大小分别是多少

编程之家2023-10-11115次浏览

其实java int在内存什么区别的问题并不复杂,但是又很多的朋友都不太了解int和integer所占内存大小分别是多少,因此呢,今天小编就来为大家分享java int在内存什么区别的一些知识,希望可以帮助到大家,下面我们一起来看看这个问题的分析吧!

java int在内存什么区别?int和integer所占内存大小分别是多少

JAVA中int和Integer在内存中到底存在哪里

java被执行的时候,运行的是字节码,所以你要看它到底做了什么最好看字节码,而不是你的程序。这个自动装箱拆箱会在后面做一些事情,从你的代码中可能看不到。

所以反汇编成字节码后,你会看到a==b到底是做了什么呢?

25: iload_1

java int在内存什么区别?int和integer所占内存大小分别是多少

26: aload_2

27: invokevirtual#31// Method java/lang/Integer.intValue:()I

30: if_icmpne 37

java int在内存什么区别?int和integer所占内存大小分别是多少

注意,你这里的a==b其实对于b来说调用了b.intValue()方法。因此只是做了 int的比较。和存在哪里没有关系。这和自动装箱拆箱有关。

C语言中int和float有什么区别啊

一、指代不同

1、int:是一种数据类型,在编程语言(C、C++、C#、Java等)中,是用于定义整数类型变量的标识符。

2、float:于存储单精度浮点数或双精度浮点数。

二、数据范围不同

1、int:int占用4字节,32比特,数据范围为-2147483648~2147483647[-2^31~2^31-1]。

2、float:loat类型提供了一个在-3.4E+38~ 3.4E+38之间的范围。

三、特点不同

1、int:除了int类型之外,还有short、long、long long类型可以表示整数。

2、float:可以提升为更大基数的类型(从 float类型到 double类型)。对浮点变量执行算术时,通常会出现提升。此算术始终以与具有最高精度的变量一样高的精度执行。

参考资料来源:百度百科-INT

参考资料来源:百度百科-FLOAT

int和integer所占内存大小分别是多少

int占用4个内存。

integer占用16个字节。

int是基本数据,Integer是包装类。

基本数据和包装类:

java是面向对象语言,基本数据类型并不是一个具体的类,用包装类可以更好的提现万物基于对象这一理念。

集合中的泛型需要基类是Object类型,所以必须有个对象的包装类才能使用。

包装类属于引用数据类型,所以它们之间的区别就是基本数据类型和引用数据类型的区别。反应到内存中,基本数据类型的值是存放在栈里面,而包装类的栈存放的是值得地址,值存放在堆内存中。

扩展资料:

Integer类和 int的区别:

1、Integer是 int包装类,int是八大基本数据类型之一。

2、Integer是类,默认值为null,int是基本数据类型,默认值为0。

3、Integer表示的是对象,用一个引用指向这个对象,而int是基本数据类型,直接存储数值。

Java中 int 与public static int 有什么区别呀

首先说一下int和public int的区别:

这个问题是作用域的问题,就是说这个变量的作用范围是多大。

public class Text{

int a;

public void toString(){......}

}

对于这个int,他是该类的成员属性,因为没有访问修饰符,所以java默认认为他是default,也就是只有在该类中能访问,其他地方不能访问。

和private相似,区别不太清楚。

public class Text{

public int a;

.....

}

对于这个int,由于有public修饰,所以这个变量对于所有类都是可见的,没有访问的限制。

static,其实就是一个静态变量的意思。用static修饰的变量又叫类变量,他有很多特性,现在列出来;

public static int a,对于这个变量,首先他不需要一个实例化对象,也就是说不需要new对象就可以用类名+变量名来访问这个变量,当然要看访问修饰符的限制。

其次,这个变量是一个全局的变量,就是这个对象被该类的其他所有对象共有。

比如:

public class Text{

public static int a= 1;

public static void main(String[] args){

Text.a= 2;//这个就是static的作用,不需要new对象就可以访问。

Text aa= new Text();

Text bb= new Text();

//new两个不同的对象

aa.a= 3;//这个就是public的作用,说明该成员变量为对外可见。其实这么做并不好

//现在我们想想,bb.a是多少呢?

System.out.println(bb.a);

结果就是3,因为static修饰的变量时类变量,是被该类所有对象共有,所以你在aa中修改的a的值,而aa和bb是共用这个a变量的。所以bb的a值也再变化。

}

}

如果你还想了解更多这方面的信息,记得收藏关注本站。

java怎么运行sql脚本文件是什么?用JAVA如何实现执行SQL脚本文件三代i5 第十三代i5