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”

相关内容

热门资讯

专业讨论!铭豪汇辅助器功能技巧... 专业讨论!铭豪汇辅助器功能技巧,铭豪汇好像存在有辅助器技巧1、完成铭豪汇辅助器v3.3的残局,帮助玩...
必知教程!众乐联盟辅助器功能a... 必知教程!众乐联盟辅助器功能app,众乐联盟都是存在有辅助器app1、超多福利:超高返利,海量正版游...
必看攻略!蘑菇云棋牌透视功能a... 必看攻略!蘑菇云棋牌透视功能app,蘑菇云棋牌好像真的有透视app1、每一步都需要思考,不同水平的挑...
今日重大通报!盛元游戏透视功能... 今日重大通报!盛元游戏透视功能工具,盛元游戏总是是有透视工具1、很好的工具软件,可以解锁游戏的盛元游...
玩家必看科普!天天九州麻将开挂... 玩家必看科普!天天九州麻将开挂功能插件,天天九州麻将竟然是真的有开挂插件1、天天九州麻将免费脚本咨询...
热门推荐!蘑菇云辅助器功能攻略... 热门推荐!蘑菇云辅助器功能攻略,蘑菇云切实有辅助器攻略1、操作简单,无需蘑菇云手机版透视脚本,只需要...
大神推荐!柚子联盟透视功能攻略... 大神推荐!柚子联盟透视功能攻略,柚子联盟真是是真的有透视攻略1、柚子联盟公共底牌简单,柚子联盟透视插...
一起来探讨!新天地辅助器功能工... 一起来探讨!新天地辅助器功能工具,新天地切实是真的有辅助器工具1、新天地破解器简单,新天地机器人操作...
分辨真假!中至江西辅助器功能技... 分辨真假!中至江西辅助器功能技巧,中至江西真是是有辅助器技巧1、起透看视 中至江西辅助软件价格2、随...
玩家必备科技!欢乐局透视挂功能... 玩家必备科技!欢乐局透视挂功能软件,欢乐局原来存在有透视挂软件1、下载好欢乐局正确养号方法之后点击打...