java - Java中是否有删除一行中直接包含3个数据的索引的功能?
问题描述
我想删除包含以下数据的索引:姓名、通行证和电话。起初,我使用了 array.remove(index) 方法,但它只有在我只有一个数据时才有效。我也尝试过使用一些公式,例如 array.remove((index-1)*3) 但是当我选择显示数据时,一切都搞砸了。我也尝试使用循环,但最终结果也搞砸了。有什么方法或逻辑可以实现吗?
这是我当前的代码:
case 3:
show(menu);
System.out.println("Input data number to be deleted: ");
int index = scan.nextInt();
//menu.remove(index);
//menu.removeRange
for(int i = index-1, j = index ; i < menu.size(); i+=3, j++){
menu.remove(i);
menu.remove(j);
//System.out.println("Data is removed");
}
// menu.remove((index-1)*3);
// menu.remove((index-1)*3+1);
// menu.remove((index-1)*3+2);
System.out.println("Data is removed");
break;
}
解决方案
弄清楚您要做什么有点困难,但我猜您的问题是您正在使用索引从集合中删除项目,而忽略了删除一个项目会使后续项目向前移动的事实。
换句话说,
collection.remove(3);
collection.remove(3);
collection.remove(3);
删除最初位于索引 3、4 和 5 的项目
推荐阅读
- google-bigquery - BigQuery:即使在应用别名后列名也不明确
- multithreading - cpu、多处理器、多核之间的关系;我的电脑有多少个内核
- python - Slack API chat.update internal_error 通过请求,通过 https://api.slack.com/ 工作
- php - 条纹结帐按钮未传递电子邮件地址
- python - 从 SQLAlchemy orm 构建完整查询
- r - 加入时使用 data.table on = .( ) 参数中的函数
- c++ - 运算符重载 >> 到复数
- flask - Flask 变量不适用于 console.log
- android - npx react-native run-android 失败并出现错误
- python - Azure 持久功能扇入/扇出自定义状态