Anylogic-Functionnotchangingbooleanvariable
创始人
2024-08-22 13:30:15
0

该问题通常出现在使用Anylogic的Java函数时,如果想要修改布尔变量的值,但是函数结束后发现变量的值并没有发生改变。这是由于Java的参数传递机制导致的,Anylogic默认使用传值而不是传引用方式,因此当我们将一个对象作为参数传递给一个函数时,函数会创建该对象的一个副本并对其进行操作,而不是直接修改原始对象。要解决这个问题,可以采用以下三种方法:

1.使用返回语句 可以将布尔变量作为函数的返回值,而不是将其作为参数传递。这样,函数将始终返回布尔值的最新状态。

例如:

boolean check() { //做一些操作 return true; //或者false }

2.使用Anylogic提供的函数 Anylogic提供了一些函数,如“setBoolean()”和“getBoolean()”,可以用于设置和获取布尔变量的值。使用这些函数可以确保正确地修改布尔变量的值。

例如:

boolean b = getBoolean("myVar"); setBoolean("myVar", !b);

3.使用对象引用 如果你要传递对象引用而不是对象本身,可以将参数类型设置为“BooleanHolder”。这样,函数将修改引用的对象而不是对象本身。

例如:

void changeBoolean(BooleanHolder bh) { bh.value = !bh.value; }

BooleanHolder bh = new BooleanHolder(true); changeBoolean(bh); println(bh.value); //显示“false”

相关内容

热门资讯

2分钟细说!wepoker辅助... 2分钟细说!wepoker辅助器是真的吗,竞技联盟辅助插件,都是是有挂(有挂秘籍)1、这是跨平台的w...
科技新动态!wepoker怎么... 科技新动态!wepoker怎么设置盖牌,wepoker脚本下载,一直是真的有挂(有挂分享)1、让任何...
传递经验!we-poker正规... 传递经验!we-poker正规吗,pokernow辅助工具,总是存在有挂(有挂实锤)1、金币登录送、...
揭秘!aapoker辅助怎么用... 揭秘!aapoker辅助怎么用,德州局HHpoker透视脚本,其实是有挂(有挂教学)1)辅助插件:进...
玩家攻略!wepoker透视a... 玩家攻略!wepoker透视app下载,hhpoker德州挂真的有吗,真是是有挂(真实有挂)1、下载...
重大发现!大菠萝789辅助器下... 重大发现!大菠萝789辅助器下载,hhpoker辅助软件,一直是真的有挂(有挂讲解)1、起透看视 辅...
实操分享!wepoker插件下... 实操分享!wepoker插件下载,wepoker怎么发冤家牌,都是真的是有挂(有挂分享)1、辅助软件...
重要通知!wepoker分析,... 重要通知!wepoker分析,德普之星辅助器怎么用,一贯存在有挂(真的有挂)运德普之星辅助器辅助工具...
推荐攻略!wpk有那种辅助吗,... 推荐攻略!wpk有那种辅助吗,hhpoker有没有外挂,真是存在有挂(有挂总结)1、有没有辅助教程、...
发现玩家!约局吧德州真的存在透... 发现玩家!约局吧德州真的存在透视吗,aa poker辅助,都是是真的有挂(有挂教程)1、玩家可以在透...