Como mover arquivos usando Java?

Bom dia, como manipular em java arquivos identificando sua extensão e criando pasta movendo arquivos para dentro delas exemplo. arquivos mp4 criando a pasta mp4 e movendo arquivos mp4 para ela.

Comece olhando o pacote java.io, classe File.

Fiz um exemplo de como vc pode fazer, tentei explicar cada operação nos comentários.

O ideal é que vc trate as exceções corretamente, no meu exemplo eu priorizei a simplicidade para que vc pegue a ideia e possa explorar sozinho.

import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.List;
import java.util.stream.Collectors;
import java.util.stream.Stream;

public class App {
  public static void main(String... args) throws IOException {
    Path source = Paths.get("src");
    Path destination = Paths.get("dest");
    String extension = ".txt";

    // Verifica se o diretório de destino existe e cria se não existir
    if (Files.notExists(destination)) {
      Files.createDirectory(destination);
    }

    // Abre o diretório de origem como uma Stream.
    // Usei o try porque ele garante que a Stream será fechada.
    try (Stream<Path> files = Files.list(source)) {

      // Inclui apenas os arquivos. Exclui da lista outros diretórios, por exemplo.
      Stream<Path> onlyRegularFiles = files.filter(Files::isRegularFile);

      // Inclui apenas arquivos com a extensão desejada.
      Stream<Path> onlyWithExtension = onlyRegularFiles.filter(f -> f.toString().endsWith(extension));

      // Transforma a Stream em um List.
      List<Path> fileList = onlyWithExtension.collect(Collectors.toList());

      // Move cada item da lista para o diretório de destino.
      for (Path path : fileList) {
        Files.move(path, destination.resolve(path.getFileName()));
      }
    }
  }
}
Exemplo mais complexo, porém, mais completo, na minha opinião (Clique para expandir)
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.List;
import java.util.function.Consumer;
import java.util.stream.Collectors;
import java.util.stream.Stream;

public class Main {
  private static void printError(String message, IOException e) {
    System.out.printf("%s: [%s] %s\n", message, e.getClass().getName(), e.getMessage());
  }

  private static boolean createDestinationDirectory(Path destination) {
    try {
      if (Files.notExists(destination)) {
        Files.createDirectory(destination);
      }

      return true;
    } catch (IOException e) {
      printError("Erro ao criar diretório de destino", e);
      return false;
    }
  }

  private static List<Path> getFileList(Path source, String extension) {
    try (Stream<Path> files = Files.list(source)) {
      return files.filter(f -> Files.isRegularFile(f) && f.toString().endsWith(extension)).collect(Collectors.toList());
    } catch (IOException e) {
      printError("Erro ao pegar lista de arquivos", e);
      return List.of();
    }
  }

  private static Consumer<Path> move(Path destination) {
    return path -> {
      try {
        Files.move(path, destination.resolve(path.getFileName()));
      } catch (IOException e) {
        printError("Erro ao mover arquivos", e);
      }
    };
  }

  public static void main(String... args) {
    Path source = Paths.get("src");
    Path destination = Paths.get("dest");
    String extension = ".txt";

    if (createDestinationDirectory(destination)) {
      getFileList(source, extension).forEach(move(destination));
    }
  }
}

showw mais saberia me dizer como criar pasta dos arquivos automaticamente

Como assim? Me explica melhor.

Existe o método ‘mkdir()’ da classe File.
Irei sugerir dois links onde ensinam passo a passo de como capturar a extensão do arquivo e como criar novos diretórios.

Como obter a extensão do arquivo:
Java: Como obter a extensão de um arquivo - { Dicas de Java }

Criando pastas (diretórios) automaticamente no Java:
Criando pastas automaticamente com Java | Luiz Bitencourt (wordpress.com)

Estude os dois e organize o código de acordo com o que pretende.