假设我在一个android项目中有这段代码:
center.x = (int) (binding.trainingActivityFixationPoint.getX() +
binding.trainingActivityFixationPoint.getWidth() / 2);
center.y = (int) (binding.trainingActivityFixationPoint.getY() +
binding.trainingActivityFixationPoint.getHeight() / 2);
从技术上讲,重复访问trainingActivityFixationPoint应该是一个常量操作,因为它已经缓存在android绑定对象中,所以我认为这并不意味着需要创建一个变量本身,但是上面的访问长度对我来说似乎很混乱。在这种情况下,引入一个新变量并使代码看起来像这样是不是更好?
ImageView fixation = binding.trainingActivityFixationPoint;
center.x = (int) (fixation.getX() + fixation.getWidth() / 2);
center.y = (int) (fixation.getY() + fixation.getHeight() / 2);
我发现自己在android上经常这样做,但我不确定这是不是一个好的做法。
发布于 2017-06-27 22:04:26
这没有什么错--它只是一个对现有对象的引用。但请记住,如果此引用没有超出作用域,则绑定引用的整个对象将不会被垃圾回收。
例如,如果您在一个方法中使用固定,那么它的作用域是有范围的,根本不是问题。这样的引用非常小,只要您不创建数千个引用,就不会对您的应用程序产生可测量的影响。
https://stackoverflow.com/questions/44790617
复制相似问题