¿Cómo guardar el archivo usando JFileChooser?

Tengo un método en mi aplicación llamado "Guardar como" que guarda la imagen de mi aplicación en la computadora en un archivo. Usé el JFileChooser para permitir a los usuarios elegir la ubicación deseada para guardar el archivo. El problema es que, a menos que el usuario escriba explícitamente el formato de archivo, guarda el archivo sin extensión. ¿Cómo puedo tener formatos como jpg, png en el menú desplegable Tipo de archivo?

y, ¿cómo puedo obtener una extensión del menú desplegable Tipo de archivo para guardar mi archivo de imagen?

 ImageIO.write(image,extension,file);

Respuestas a la pregunta(4)

Su respuesta a la pregunta