作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想了解什么是clone()
方法的好处以及何时应该使用它,为什么有时当我将一个变量的值赋予另一个变量时另一个变量变量链接到第一个变量,我的意思是当您对其中一个变量进行更改时,另一个变量的值会自动更改为您更改的值,尽管有时不会发生 。好的,现在我展示一些例子:-
当将 Android Java
语言中的 RectF 变量初始化为另一个 RectF 变量时,会发生这种情况(例如):-
static RectF var1;
//initialise it
static void someVoid(){
RectF var2 = var1;
var2.set(...);
//now when i changed var2 also the var1 changed
}
但是当将一个Integer
变量初始化为另一个整数变量时,它不会发生,(例如):-
static int azhy = 1000;
static void someVoid(){
int hello = azhy;
hello++;
//now when i change the hello variable azhy variable stays constantly
}
我在某个地方搜索过,但没有找到结果,所以如果您能给我一些描述,我会谢谢您。
最佳答案
查看答案here有关对象和基元之间差异的一些有用的背景知识。 int
是原始类型,而 RectF
是对象。
您可以将原始类型赋值操作 (int hello = azhy;
) 视为将值从 azhy
复制到 hello
,但是它们不引用同一个对象(因此修改 hello
不会修改 azhy
。
另一方面,RectF
是一个对象,因此调用 RectF var2 = var1;
意味着 var1
和 var2
现在引用同一个对象。因此,调用 var2
上的方法会修改 var1
。
注意,int
是原始类型,但 Integer
(您在问题中引用的)是一个对象。
关于java - 当初始化变量链接到另一个变量时?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51461462/
我正在开发一个 voip 调用应用程序。我需要做的是在接到来电时将 Activity 带到前台。我在应用程序中使用 Twilio,并在收到推送消息时开始调用。 问题是我试图在接到任何电话时显示 Act
我是一名优秀的程序员,十分优秀!