1. Método recursivo
1. La recursión es llamar a su propio método, la premisa es que hay un método.
2. Uso recursivo
Encontrar las reglas de recursión requiere una condición de salida, es decir, la condición final
3. cosas a tener en cuenta
La recursión no puede haber demasiadas veces, de lo contrario habrá desbordamiento de pila y la recursión no se puede usar en la anidación, de lo contrario habrá una recursión muerta.
2.io Introducción
1. I es la entrada de entrada y o es la salida de salida. La API encapsula las transmisiones de entrada y salida en una clase, proporcionando una gran cantidad de métodos para que los usemos.
2. La tecnología IO puede escribir datos en dispositivos persistentes (incluidos discos duros, discos ópticos, discos USB, etc.). Aunque las colecciones y las matrices se pueden almacenar y leer, solo existen temporalmente en la memoria y no existirán cuando se reinicie el programa.
3. En comparación con la referencia de la memoria, leer cosas del disco duro en la memoria se llama flujo de entrada. La escritura de datos de memoria en el disco duro se llama FUERT SEMIN.
3. Código para realizar la función de la búsqueda de computadora
1. Busque carpetas con nombres de sufijo personalizados
Paquete CN.JasonFile01; import java.io.file; / ** * @author Jason * @septiembre 18 de 2016 a las 9:12:35 pm */ clase pública FindFiles04 {// El uso inteligente de variables de miembros // Las variables estadísticas se pueden colocar en posiciones miembros static int countfile = 0; public static void main (string [] args) {// Encapsula el objeto de archivo del archivo de clase principal parent = nuevo archivo ("f: // api"); // Defina el nombre del sufijo del archivo que se encuentra String SUFFIX = ".pdf"; // llamar al método para encontrar archivos scanfiles (parent, sufijo); // emite el número de archivos que cumplen con las condiciones System.out.println ("Los archivos que cumplen con las condiciones son" + CountFile + ""); } / *** Esto es encontrar archivos que cumplan con las condiciones* 1. Obtenga todos los sub-fileos y subdirectorios en el directorio actual* 2. Cargue la matriz para determinar si son archivos* Sí: cuando el nombre de sufijo está satisfecho, salga directamente la ruta absoluta donde se encuentra el archivo, y el contador se incrementa en 1* no: luego: luego la nota: si el método de lista de listas se llama (no se llama a un directorio de retorno), entonces el retorno de retorno* / privado. scanfiles (archivo parent, string sufijo) {// Obtenga todos los subcilios y subdirectorios en el archivo de directorio actual [] archivos = parent.listfiles (); // evitar que los archivos sin acceso en el sistema devuelvan los valores nulos if (files! = Null) para (archivo archivo: archivos) {if (file.isfile () && file.getName (). Endswith (sufix)) {system.println (file.getabsolutepath ()); countfile ++; } else scanfiles (archivo, sufijo); }}}2. Busque carpetas con nombres de sufijo personalizados
Paquete CN.JasonFile01; import java.io.file; / ** * @author Jason * @septiembre 18 de 2016 a las 9:12:20 pm */ public class FindFolder {// Definir la variable estadística static int countfolder = 0; public static void main (string [] args) {// Encapsula el objeto de archivo del archivo de clase principal parent = nuevo archivo ("f: // a"); // Defina el nombre del sufijo del archivo que se encuentra String SUFFIX = "1"; // llame al método de búsqueda de la carpeta escaneador (parent, sufijo); // emite el número de directorios que cumplen con las condiciones System.out.println ("Las carpetas que cumplen con las condiciones tienen" + CountFolder + ""); } / *** Este es el método para encontrar el número de carpetas que cumplen con las condiciones* 1. Obtenga todos los sub-fileos y sus subdirectorios en el directorio actual* 2. Aviva la matriz para determinar si son directorios* sí: entonces recurse* no: no: no importa* 3. El nombre sufix es el mismo ruta absoluta de salida* nota: si el método de listas de listas se llama (no se llama a un director de retorno). scanfolder (archivo parent, string sufijo) {// Obtenga todos los subdirectorios y subcreses en el archivo del directorio principal [] archivos = parent.listfiles (); if (files! = null) // atraviesa la matriz para el juicio para (archivo archivo: archivos) {if (file.isDirectory ()) scanfolder (archivo, sufijo); } // Salida del directorio para condiciones sin alquiler if (parent.getName (). Endswith (sufix)) {System.out.println (parent.getabsolutePath ()); countfolder ++; }}}4. El código realiza la función de eliminación completa de la computadora
Nota: Si lo elimina en Java, úselo con precaución.
Paquete CN.JasonFile01; import java.io.file; public class ClearAll {public static void main (string [] args) {// Encapsula el directorio principal como un archivo de archivo archivo parent = nuevo archivo ("f: // io modificar el nombre del archivo"); // llamar al método Eliminar ClearAll (Parent); } / *** Este es un método para eliminar todos los subdirectorios y subfiles en el directorio principal* 1. Obtenga todos los subfiles y subdirectorios en el directorio principal* 2. Matriz de variable y determine si son archivos* Sí: Eliminar* no: recursivo* 3. Hasta que los archivos infantiles en el directorio estén eliminados hasta que la deleción se complete, luego se elimine el archivo virtual* / privado. todos los archivos y subdirectorios infantiles en el archivo del directorio principal [] archivos = parent.listfiles (); // 1. Evite que el archivo del sistema esté en una posición y se produce la excepción del puntero nulo // 2. Evite que la ruta del sistema no exista, lo que hace que la matriz sea nula y la excepción del puntero nulo ocurre si (files! = Nulo) // atraviesa la matriz para (archivo archivo: archivos) {if (file.isfile ()) file.delete (); else ClearAll (archivo); } // eliminar la carpeta vacía parent.delete (); }}Lo anterior es todo el contenido de los ejemplos de Java IO para implementar las funciones de búsqueda y eliminación de computadora que se le traen. Espero que todos apoyen a Wulin.com más ~