1
These files contain settings like:
- information on the repository;
- information about the Eclipse project;
- project-specific Eclipse settings;
- configurations used by various tools;
- user settings.
Repositories shared by a team usually only have files that are useful to the entire team or multiple people on it. The decision whether or not to assign these files should therefore consider avoiding files that contain information pertaining to the developer environment (absolute directory paths, user names, etc.), optional tool settings, or user preferences, unless this information is forcibly standardized for the entire team. Generally, all these files are text files, being possible to inspect them to check if there are some of this "personal" information in them.
It is also considered good practice to avoid files that are automatically generated or that are often unnecessarily modified (for example, a tool could insert the timestamp when she was last executed).
The IDE is often considered a personal choice of the developer, so many teams opt out of versioning specific files from an IDE (in this case, Eclipse).
I have no experience with Java to indicate exactly which files contain what.