D20

7905 ワード

/*
 *   :       5   。
 *         :
 * 		5! = 1*2*3*4*5
 * 		5! = 5*4!
 * 
 *         ?
 * 		A:    
 * 		B:    
 * 			a:         
 * 			b:    
 * 			c:  
 */
public class DiGuiDemo {
	public static void main(String[] args) {
		int jc = 1;
		for (int x = 2; x <= 5; x++) {
			jc *= x;
		}
		System.out.println("5    :" + jc);
		
		System.out.println("5    :"+jieCheng(5));
	}
	
	/*
	 *          :
	 * 		     :int
	 * 		    :int n
	 *     :
	 * 		if(n == 1) {return 1;}
	 *   :
	 * 		if(n != 1) {return n*   (n-1);}
	 */
	public static int jieCheng(int n){
		if(n==1){
			return 1;
		}else {
			return n*jieCheng(n-1);
		}
	}
/*
 *      ,     3            ,                   ,       ,              ?
 *   :         
 * 			    
 *     : 	1
 *     :	1
 *     :	2
 *     :	3	
 *     :	5
 *     :	8
 * ...
 * 
 *             :
 * 		1,1,2,3,5,8...
 *   :
 * 		A:      ,         
 * 		B:           
 * 
 *          ?
 * 		A:    
 * 		B:       
 * 		C:    
 * 
 *               a,b
 *         :a=1,b=1
 *         :a=1,b=2
 *         :a=2,b=3
 *         :a=3,b=5
 *    :    a    b,       a+b	
 */
public class DiGuiDemo2 {
	public static void main(String[] args) {
		//       
		int[] arr = new int[20];
		arr[0] = 1;
		arr[1] = 1;
		// arr[2] = arr[0] + arr[1];
		// arr[3] = arr[1] + arr[2];
		// ...
		for (int x = 2; x < arr.length; x++) {
			arr[x] = arr[x - 2] + arr[x - 1];
		}
		System.out.println(arr[19]);// 6765
		System.out.println("----------------");

		int a = 1;
		int b = 1;
		for (int x = 0; x < 18; x++) {
			//           a
			int temp = a;
			a = b;
			b = temp + b;
		}
		System.out.println(b);
		System.out.println("----------------");

		System.out.println(fib(20));
	}

	/*
	 *   :      :int     :int n     :      1,     1   :        ,           
	 */
	public static int fib(int n) {
		if (n == 1 || n == 2) {
			return 1;
		} else {
			return fib(n - 1) + fib(n - 2);
		}
	}
}
/*
 *   :          
 * 
 *        :demo
 * 
 *   :
 * 		A:    
 * 		B:                 File  
 * 		C:   File  ,     File  
 * 		D:   File        
 * 			 :  B
 * 			 :   
 */
public class FileDeleteDemo {
	public static void main(String[] args) {
		//     
		File srcFolder = new File("demo");
		//     
		deleteFolder(srcFolder);
	}

	private static void deleteFolder(File srcFolder) {
		//                  File  
		File[] fileArray = srcFolder.listFiles();

		if (fileArray != null) {
			//    File  ,     File  
			for (File file : fileArray) {
				//    File        
				if (file.isDirectory()) {
					deleteFolder(file);
				} else {
					System.out.println(file.getName() + "---" + file.delete());
				}
			}

			System.out
					.println(srcFolder.getName() + "---" + srcFolder.delete());
		}
	}
}
/*
 *   :    E:\JavaSE      java                 。
 * 
 *   :
 * 		A:    
 * 		B:                 File  
 * 		C:   File  ,     File  
 * 		D:   File        
 * 			 :  B
 * 			 :       .java  
 * 				 :           
 * 				 :    
 */
public class FilePathDemo {
	public static void main(String[] args) {
		//     
		File srcFolder = new File("E:\\JavaSE");

		//       
		getAllJavaFilePaths(srcFolder);
	}

	private static void getAllJavaFilePaths(File srcFolder) {
		//                  File  
		File[] fileArray = srcFolder.listFiles();

		//    File  ,     File  
		for (File file : fileArray) {
			//    File        
			if (file.isDirectory()) {
				getAllJavaFilePaths(file);
			} else {
				//        .java  
				if (file.getName().endsWith(".java")) {
					//            
					System.out.println(file.getAbsolutePath());
				}
			}
		}
	}
}

データの改行を実現するにはどうすればいいですか?
どうして今改行してないの?バイトデータを書いた値なので、改行記号は書き込まれていません.
どのように実現しますか?改行記号を書き込めばいいでしょう.
さっき私たちはテキストファイルを書いて開くことができるのを見ましたが、windowsが持っているのはだめです.どうしてですか.
システムによって改行記号の識別が違うから?
windows:\r
linux:
Mac:\r
いくつかの一般的な高級手帳は、任意の改行記号を識別することができます.
 
データの追加書き込みはどのように実現しますか?
構造方法で2番目のパラメータがtrueの場合、FileOutputStream fos=new FileOutputStream(「fos 3.txt」,true);
//            
FileOutputStream fos = null;
		try {
			// fos = new FileOutputStream("z:\\fos4.txt");
			fos = new FileOutputStream("fos4.txt");
			fos.write("java".getBytes());
		} catch (FileNotFoundException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		} finally {
			//   fos  null,   close()
			if (fos != null) {
				//     close()     ,      
				try {
					fos.close();
				} catch (IOException e) {
					e.printStackTrace();
				}
			}
		}
//  1           
int by = 0;
		//   ,  ,  
		while ((by = fis.read()) != -1) {
			System.out.print((char) by);
		}

		//     
		fis.close();
//------------------------------------
//  2           
byte[] bys = new byte[1024];
		int len = 0;
		while ((len = fis.read(bys)) != -1) {
			System.out.print(new String(bys, 0, len));
		}

		//     
		fis.close();
//      
public static void main(String[] args) throws IOException {
		//      
		FileInputStream fis = new FileInputStream("a.txt");
		//      
		FileOutputStream fos = new FileOutputStream("b.txt");

		int by = 0;
		while ((by = fis.read()) != -1) {
			fos.write(by);
		}

		//     (     )
		fos.close();
		fis.close();
	}

コンピュータはどのようにして2バイトを1つの中国語に変換すべきかを識別しますか?
コンピュータ内の中国語のストレージは2バイトに分かれています.
最初のバイトは負数に違いない.
2バイト目は負の数が一般的で、正の数がある可能性があります.しかし、影響はありません.
/*
 *   : e:\\    .mp4           copy.mp4 
 * 
 *            :
 *              :	   :117235  
 *                :    :156  
 *              :    :1141  
 *                :    :47  
 */
public class CopyMp4Demo {
	public static void main(String[] args) throws IOException {
		long start = System.currentTimeMillis();
		// method1("e:\\    .mp4", "copy1.mp4");
		// method2("e:\\    .mp4", "copy2.mp4");
		// method3("e:\\    .mp4", "copy3.mp4");
		method4("e:\\    .mp4", "copy4.mp4");
		long end = System.currentTimeMillis();
		System.out.println("   :" + (end - start) + "  ");
	}

	//                :
	public static void method4(String srcString, String destString)
			throws IOException {
		BufferedInputStream bis = new BufferedInputStream(new FileInputStream(
				srcString));
		BufferedOutputStream bos = new BufferedOutputStream(
				new FileOutputStream(destString));

		byte[] bys = new byte[1024];
		int len = 0;
		while ((len = bis.read(bys)) != -1) {
			bos.write(bys, 0, len);
		}

		bos.close();
		bis.close();
	}

	//              :
	public static void method3(String srcString, String destString)
			throws IOException {
		BufferedInputStream bis = new BufferedInputStream(new FileInputStream(
				srcString));
		BufferedOutputStream bos = new BufferedOutputStream(
				new FileOutputStream(destString));

		int by = 0;
		while ((by = bis.read()) != -1) {
			bos.write(by);

		}

		bos.close();
		bis.close();
	}

	//                
	public static void method2(String srcString, String destString)
			throws IOException {
		FileInputStream fis = new FileInputStream(srcString);
		FileOutputStream fos = new FileOutputStream(destString);

		byte[] bys = new byte[1024];
		int len = 0;
		while ((len = fis.read(bys)) != -1) {
			fos.write(bys, 0, len);
		}

		fos.close();
		fis.close();
	}

	//              
	public static void method1(String srcString, String destString)
			throws IOException {
		FileInputStream fis = new FileInputStream(srcString);
		FileOutputStream fos = new FileOutputStream(destString);

		int by = 0;
		while ((by = fis.read()) != -1) {
			fos.write(by);
		}

		fos.close();
		fis.close();
	}
}