title: Java - Error when removing from an ArrayList more than once. (IllegalStateException)
body: <p>I've been googling around for quite a bit, and can't seem to find a solution. What have I done wrong here? My problem is in the title. Here is the exception I get:</p>
  
  <pre><code>java.lang.IllegalStateException
  at java.util.ArrayList$Itr.remove(Unknown Source)
  at me.herp.derp.client.Config.updateItem(Config.java:24)
  at me.herp.derp.client.Commands.parseCommand(Commands.java:23)
  at me.herp.derp.client.ChatCommands.handleChatcommand(ChatCommands.java:29)
  at net.minecraft.src.EntityClientPlayerMP.sendChatMessage(EntityClientPlayerMP.java:171)
  at net.minecraft.src.GuiChat.keyTyped(GuiChat.java:104)
  at net.minecraft.src.GuiScreen.handleKeyboardInput(GuiScreen.java:227)
  at net.minecraft.src.GuiScreen.handleInput(GuiScreen.java:176)
  at net.minecraft.client.Minecraft.runTick(Minecraft.java:1494)
  at net.minecraft.client.Minecraft.runGameLoop(Minecraft.java:843)
  at net.minecraft.client.Minecraft.run(Minecraft.java:768)
  at java.lang.Thread.run(Unknown Source)
  </code></pre>
  
  <p>And here is my code:</p>
  
  <pre><code>public static void updateItem(String item, String value)
  {
      if (!hasValue(item))
      {
          addItem(item, value);
          return;
      }
      for (ConfigItem c : configItems)
      {
          if (c.ITEM.equals(item))
          {
              configItems.iterator().remove();
              break;
          }
      }
      ConfigFile.saveConfig();
  }
  </code></pre>