gpt4 book ai didi

beanshell - 当最终涉及到beanshell时,为什么中断for循环不起作用

转载 作者:行者123 更新时间:2023-12-02 03:59:32 26 4
gpt4 key购买 nike

这段代码:

print(" - Start");
int[] num = new int[] {1,2,3,4,5,6,7,8,9,10};
for(int i : num)
{
print("--> "+ i);
try
{
print(" . try");
if(i == 2)
break;
}
catch (java.lang.Exception e)
{}
finally
{
print(" . finally");
}
}
print(" - End");

不能按预期工作。即 break似乎不起作用。
谁能解释为什么?

最佳答案

我要说这是一个BeanShell错误。并非出于以下概述的原因(这些原因仅适用于Mac上的Java),而是因为如果在“经典” Java应用程序的主方法中放置相同的代码,则其行为方式将有所不同。即,中断条件起作用。

以下内容仅适用于Mac上的最新Java版本。

我认为这是BeanShell错误。当我尝试将if更改为以下BeanShell时挂断:

if(i == 2) {
print("trying to break");
break;
}

我强制关闭它,然后使用命令行重新启动它。我看到以下错误:
$ java -jar bsh-2.0b4.jar 
java[1119] <Error>: CGContextGetCTM: invalid context 0x0
java[1119] <Error>: CGContextSetBaseCTM: invalid context 0x0
java[1119] <Error>: CGContextGetCTM: invalid context 0x0
java[1119] <Error>: CGContextSetBaseCTM: invalid context 0x0

关于beanshell - 当最终涉及到beanshell时,为什么中断for循环不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11113948/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com