首先,对不起英语不好-
我想从“ventas”移到“historico”只有那些具有samen代码的对象,而不是“clientes”中的“codcli”,这是我的代码:
public static void Eliminar_Cliente(){
System.out.println("Que cliente quieres eliminar? (Introduce el código de cliente)");
int cliE=(sc.nextInt()-1);
Cliente clienteBuscado=null;
for (Cliente cliente : cli) {
if(cliente.codCli==cliE) clienteBuscado=cliente;
}
if(clienteBuscado!=null)
{
ArrayList<Ventas> ventaAux=new ArrayList();
for (Ventas venta : vent) {
System.out.println("asddsa");
if (venta.cliente==clienteBuscado.codCli){
Historico h = new Historico(venta);
his.add(h);
ventaAux.add(venta);
}
}
if(!ventaAux.isEmpty())
{
for (Ventas ventas : ventaAux) {
vent.remove(ventas);
}
}
}
}
但输出是绝对没有,它甚至没有进入文塔斯'为每个循环。
有什么帮助吗?
1条答案
按热度按时间aiqt4smr1#
更有可能的是
Collection
vent
是空的。确保在调用之前正确填充集合Eliminar_Cliente
.如果
clienteBuscado
是null
这个if
语句块for
调用的循环将永远不会被输入->确保clienteBuscado
指定了一个值。更重要的是要确保你真的在调用
Eliminar_Cliente
.旁白:例如,java命名约定对方法名使用camelcase
eliminarCliente