Estou tendo problema com essa parte do meu código, é um exercício do meu curso, ele funciona direitinho exceto em uma parte, que eu n tenho a mínima ideia de como resolver
qualquer ajuda é bem vinda 
id é int
System.out.println("Digite o id: ");
i = in.nextInt(); //atribui o valor digitado em i
for (Triangulo t : triangulos) //o erro está aqui {
if (t.getId() == i) // compara i com algum id armazenado na lista{
triangulos.remove(t); //remove o item da lista
}
}
Os erros que dão, são esses:
Exception in thread "main" java.util.ConcurrentModificationException
at java.util.ArrayList$Itr.checkForComodification(ArrayList.java:901)
at java.util.ArrayList$Itr.next(ArrayList.java:851)
at exerciciotriangulo.ExercicioTriangulo.main(ExercicioTriangulo.java:94)
//linha 94 é o for, lá de cima
@joao_teixeira2002
Quando vc faz o for aprimorado ou usando iterator a cada iteração ele checa se lista não foi modificada dai caso ela esteja modificada ela lança a Exceção:
java.util.ConcurrentModificationException
aqui uns exemplos que vc pode remover um item de um arraylist sem usar o for aprimorado :
//removendo com iterator
//nessa caso vc pode remover com o proprio objeto Iterator e nao com objeto ArrayList
List<String> listOfBooks = new ArrayList<>();
listOfBooks.add("Programando com Java");
listOfBooks.add("Programando C#");
listOfBooks.add("Melhor Java");
listOfBooks.add("Código completo");
System.out.println("Lista antes : " + listOfBooks);
Iterator<String> iterator = listOfBooks.iterator();
while (iterator.hasNext()) {
String book = iterator.next();
System.out.println("Removendo " + book);
if (book.equalsIgnoreCase("Programando C#")) {
iterator.remove();
}
}
System.out.println("Lista depois : " + listOfBooks);
System.out.println("-------------------------------------------------");
//----------------------------------
//removendo com for tradicio0nal
List<String> listOfBooks2 = new ArrayList<>();
listOfBooks2.add("Programando com Java 2 ");
listOfBooks2.add("Programando C# 2");
listOfBooks2.add("Melhor Java 2");
listOfBooks2.add("Código completo 2");
System.out.println("Lista antes : " + listOfBooks2);
for(int i=0; i<listOfBooks2.size(); i++){
String book = listOfBooks2.get(i);
if(book.contains("Programando")){
System.out.println("Removendo " + book);
listOfBooks2.remove(i); // will throw CME
}
}
System.out.println("List depois : " + listOfBooks2);