In this loop:
for(Integer st:lis){
lis.remove(1);
System.out.println(lis.size());
}
You are only constantly removing element with index 1 from the matrix without even caring what is in st. So this loop and with every iteration will try to remove item with index 1. Concurent modification will come up with tthis loop:
for(Integer st:lis){
lis.remove(st);
System.out.println(lis.size());
}