草庐IT

局部剪枝

全部标签

java - 实例变量和局部变量的默认值

我读到Java为类属性提供默认值,但不为局部变量提供默认值。对吗?如果是这样,这背后的原因是什么?当你在做一件好事时,为什么不一直做下去呢? 最佳答案 标准局部变量存储在堆栈中,在初始化之前不会实际创建。如果不使用局部变量,则它不会进入堆栈。然而,成员变量在堆中分配,因此具有默认占位符(空引用或默认原语)。 关于java-实例变量和局部变量的默认值,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/qu

java - Java中的局部变量和实例变量有什么区别?

除了作用域和存储方面的差异,Java中的实例变量和局部变量之间还有其他主要区别吗? 最佳答案 我看到的主要区别在于:范围:局部变量仅在声明它们的方法或block中可见,而实例变量可以在类中的所有方法中看到。声明位置:局部变量在方法或block内声明,而实例变量在类内,但在方法外。存在时间:局部变量在方法调用时创建,方法退出时销毁,而实例变量使用new创建,并在方法退出时由垃圾收集器销毁没有提及它们。访问:您不能访问局部变量,而实例变量如果声明为公共(public)变量则可以访问。声明位置:局部变量在调用之前在方法或block中声明,

java - 在 Lambda java 8 中改变实例或局部对象变量

我知道出于并发原因,我无法在Java8的lambda中更新局部变量的值。所以这是非法的:doubled=0;orders.forEach((o)->{d+=o.getTotal();});但是,如何更新实例变量或更改局部对象的状态呢?例如,我有一个Swing应用程序,我有一个按钮和一个声明为实例变量的标签,当我单击按钮时,我想隐藏标签jButton1.addActionListener((e)->{jLabel.setVisible(false);});我没有遇到编译器错误并且工作正常,但是......在lambda中更改对象的状态是否正确?我将来会遇到并发问题或其他问题吗?这里是另一

java - 从 lambda 表达式引用的局部变量必须是最终的或实际上是最终的

我有一个JavaFX8程序(适用于JavaFXPorts跨平台),它的框架非常适合做我想做的事,但还差了一步。该程序读取一个文本文件,计算行数以建立一个随机范围,从该范围中选择一个随机数并读取该行以供显示。Theerroris:localvariablesreferencedfromalambdaexpressionmustbefinaloreffectivelyfinalbutton.setOnAction(e->l.setText(readln2));我对java有点陌生,但似乎我是否使用Lambda是否在Labell中显示下一个随机行,我的button.setOnAction(e

java - 局部变量的垃圾收集

我是一名进入Java世界的C++程序员。而且我无法摆脱不得不让Java垃圾收集器进行清理的糟糕感觉。例如,此代码在Java中的行为如何?publicvoidmyFunction(){myObjectobject=newmyObject();object.doSomething();}myFunction()退出时局部变量对象会被删除吗?我是否必须在退出前将对象设置为null,否则它会超出范围并被GC删除吗?或者,在最坏的情况下,它会像在C++中那样泄漏吗? 最佳答案 它将在不再使用后某个时候被垃圾回收。我相信在当前的Java实现中,

Java:在封闭范围内定义的局部变量 mi 必须是最终的或实际上是最终的

我收到错误,如主题所示,请教您如何修复它...错误在menuItem-loop中,我尝试将textArea前景色设置为从menuItem中选择的颜色:(colors[mi])String[]colors={"blue","yellow","orange","red","white","black","green",};JMenumnForeground=newJMenu("Foreground");for(intmi=0;mi 最佳答案 错误意味着您不能使用局部变量mi在内部类中。要在内部类中使用变量,您必须声明它final.只要m

java - 我可以使用 Java 反射获取有关局部变量的信息吗?

我需要知道局部变量的类型。我正在使用Java反射,但我无法使用它。你能告诉我如何知道局部变量的类型/名称吗?我可以使用Java反射获取有关局部变量的信息吗? 最佳答案 假设您正在谈论一个方法或构造函数的局部变量,您无法使用反射找到它们。你必须要么使用字节码库,例如BCEL或ASM,或者使用远程调试器API之一。后者将允许您访问局部变量的值,但仅限于JVM被调试代理挂起时。这两种方法都依赖于使用调试信息编译的相关类。具体来说,需要用“局部变量调试信息”编译类;例如使用javac-g...。默认情况下不包含“vars”调试信息。

Python:如何从一维数组或列表中获取局部最大值

我是Python的新手,我有一个问题,我无法通过找到的答案来解决......希望有人能提供帮助:我需要获取从csv文件导入的数据集的所有局部最大值的列表。值范围从0到0.5左右。我只需要获取一个数据行(“Werte”、数组或“N”、列表)的局部最大值列表来对它们进行统计。这是我得到的:importnumpyasnpfromnumpyimport*N=[]file=open('C:/Auswertung/PEE/PEE_L_1_O_130702-1.1.csv','r')Probe=file.readline()#leseInhaltzeilenweiseinListenHeader=f

python - 在使用 try 和 except 语句赋值之前引用的局部变量

这个问题在这里已经有了答案:localvariable'servers'referencedbeforeassignment(3个答案)关闭9年前。我在try和except语句中遇到了一些问题,我有一个输入字符串的条目小部件,但我有稍后将其转换为整数的代码,问题是如果用户输入类似文本的内容,它会抛出像这样的错误:ExceptioninTkintercallbackTraceback(mostrecentcalllast):File"/usr/lib/python3.2/tkinter/__init__.py",line1402,in__call__returnself.func(*ar

python - 如何在函数中使用局部变量并返回它?

我正在尝试创建一个脚本来设置一个局部变量,从一个函数中引用它,并且可以将操纵的值返回到主范围(或者它所调用的任何东西;我是Python的新手)我已经简化了我的代码以展示我正在努力完成的最基本的事情,我认为这是将模块中的本地导入到功能block中。我已经通过使用globals使它工作,但这不是最好的解决方案。..chambersinreactor=0;cardsdiscarded=0;deffind_chamber_discard():"""Findchambersanddiscardinrow(readseachplayerslot)"""chambersinreactor=0;#Re