先遍历一遍如果背包中存在该物品 则该物品数量加1。
若不存在,再遍历是否为空标记“NULL”字符串:如有,插入,若无,提示背包已满// 我被搞糊涂了,。求大侠,伪代码也行
for (int i = 0; i < props_name.length; i++) {
if (props_name[i].equals(propsName)) { //存在物品,则物品数加1
props_sum[i] = props_sum[i] + num; }
}
for (int i = 0; i < props_name.length; i++) {
if (props_name[i].equals("NULL")) {
props_name[i] = propsName;
props_sum[i] = props_sum[i] + num; }
}
若不存在,再遍历是否为空标记“NULL”字符串:如有,插入,若无,提示背包已满// 我被搞糊涂了,。求大侠,伪代码也行
for (int i = 0; i < props_name.length; i++) {
if (props_name[i].equals(propsName)) { //存在物品,则物品数加1
props_sum[i] = props_sum[i] + num; }
}
for (int i = 0; i < props_name.length; i++) {
if (props_name[i].equals("NULL")) {
props_name[i] = propsName;
props_sum[i] = props_sum[i] + num; }
}
感觉你的意思是不是少写了一个判断
for (int i = 0; i < props_name.length; i++) {
if(props_sum[i]==0)//你的意思是这个么
if (props_name[i].equals("NULL")) {
props_name[i] = propsName;
props_sum[i] = props_sum[i] + num; }
}
是当前元素不是NULL就提示还是所有的都不包含NULL
if (props_name[i].equals(propsName)) { //存在物品,则物品数加1
props_sum[i] = props_sum[i] + num; }
}
bool hasNull = false;
for (int i = 0; i < props_name.length; i++) {
if(props_sum[i]==0){
if (props_name[i].equals("NULL")) {
props_name[i] = propsName;
props_sum[i] = props_sum[i] + num;
hasNull = true;
}
}
}
if(!hasNull) System.out.println("背包满")
判断如果存在该元素的话 就不需要底下的判断是否为NULL或者是否满了
那个代码稍微改改就行了的
bool hasNull = false;
bool hasprops = false;
for (int i = 0; i < props_name.length; i++) {
if (props_name[i].equals(propsName)) { //存在物品,则物品数加1
props_sum[i] = props_sum[i] + num;
hasprops = true;//有物品
}
}
if(!hasprops)//如果没物品
for (int i = 0; i < props_name.length; i++) {
if (props_name[i].equals("NULL")) {
props_name[i] = propsName;
props_sum[i] = props_sum[i] + num;
hasNull = true;//有NULL
}
}
if(!hasProp&&!hasNull) System.out.println("背包满")
标量下是否包含物品,是否有空地方,如果都没的话就背包满