gpt4 book ai didi

java - 使用 ID java 插入列表

转载 作者:行者123 更新时间:2023-12-01 08:51:34 25 4
gpt4 key购买 nike

目前,我有一种方法可以将行为插入另一个名为Aptitude的类的列表中。行为有一个 ID,我想将创建的下一个行为插入到列表中,而下一个可用 ID 不存在于整个列表中。我这样做是这样的:

public Behavior addBehavior(BehaviorDto behaviorDto, String aptitudeId) {
Aptitude aptitude;
aptitude = findById(aptitudeId);
List<Behavior> behaviors = aptitude.getBehaviors();
int nextId = -1;
boolean flag;
for (int i = 1; i <= behaviors.size() + 1; i++) {
flag = true;
for (Behavior behavior1 : behaviors) {
if (Integer.parseInt(behavior1.getId()) == i) {
flag = false;
continue;
}

}
if (flag) {
nextId = i;
break;
}
}

但我记得有人告诉我有一种优化方法,不需要使用标志变量。

如何改进此代码?

编辑

该方法的其余部分:

Behavior behavior = new Behavior(String.valueOf(nextId), behaviorDto.getEn(), behaviorDto.getEs());
behavior.setId(String.valueOf(nextId));
aptitude.addBehavior(behavior);
updateAptitude(aptitude);
return behavior;

最佳答案

我希望Aptitude能够“知道”下一个可用的行为ID(面向对象)

public Behavior addBehavior(BehaviorDto behaviorDto, String aptitudeId) {
Aptitude aptitude = findById(aptitudeId);
List<Behavior> behaviors = aptitude.getBehaviors();
int nextId = aptitude.getNextBehaviorId()

// ...
}

关于java - 使用 ID java 插入列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42367258/

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