¶à·¹é²¢ÅÅÐò¡¾JAVAʵÏÖ¡¿
¶ÔÔ¶Ô¶´óÓÚÄÚ´æµÄÊý¾Ý½øÐÐÍâÅÅÐò£¬Ôڶ෱ȽϵÄʱºòÓðÜÕßÊ÷ЧÂÊ»á¸ü¸ß¡£
package my.sort;
import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.BufferedWriter;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.FileWriter;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Iterator;
import java.util.Random;
/**
* »ùÓÚ´óÊý¾ÝÁ¿µÄÍâÅÅÐòËã·¨£¬·ÖΪ¶þ·¹ó±öºÍ¶à·¹é²¢
* @author java2king
* @link http://blog.csdn.net/Java2King
*
*/
public class ExternalSort {
public static int ITEM_COUNT = 10000000; //×ÜÊý
public static int BUFFER_SIZE = 1024*4*1000;// Ò»´Î»º³å¶ÁÈ¡
public static int FILE_COUNT = 1024*1000*1*4;// ÿ¸öÎļþµÄ¼Ç¼Êý1
public static File MAIN_FILE = new File("mainset");//ÒªÅÅÐòµÄÎļþ
/**
* ¶þ·¹é²¢
* @param file
* @return
* @throws IOException
*/
public File sort(File file) throws IOException {
ArrayList<File> files = split(file);
return process(files);
}
/**
* ¶à·¹é²¢
* @param file
* @throws IOException
*/
public void mSort(File file) throws IOException{
ArrayList<File> files = split(file);
multipleMerge(files);
}
// recursive method to merge the lists until we are left with a
// single merged list
private File process(ArrayList<File> list) throws IOException {
if (list.size() == 1) {
return list.get(0);
}
ArrayList<File> inter = new ArrayList<File>();
for (Iterator<File> itr = list.iterator(); itr.hasNext();) {
File one = itr.next();
if (itr.hasNext()) {
File two = itr.next();
inter.add(merge(one, two)
Ïà¹ØÎĵµ£º
Ò» ÎÊÌâµÄÌá³ö
JavaµÄÒ»¸öÖØÒªÓŵã¾ÍÊÇͨ¹ýÀ¬»øÊÕ¼¯Æ÷(Garbage Collection£¬GC)×Ô¶¯¹ÜÀíÄÚ´æµÄ»ØÊÕ£¬³ÌÐòÔ±²»ÐèҪͨ¹ýµ÷Óú¯ÊýÀ´ÊÍ·ÅÄÚ´æ¡£Òò´Ë£¬ºÜ¶à³ÌÐòÔ±ÈÏΪJava²»´æÔÚÄÚ´æÐ¹Â©ÎÊÌ⣬»òÕßÈÏΪ¼´Ê¹ ÓÐÄÚ´æÐ¹Â©Ò²²»ÊdzÌÐòµÄÔðÈΣ¬¶øÊÇGC»òJVMµÄÎÊÌâ¡£Æäʵ£¬ÕâÖÖÏë·¨ÊDz»ÕýÈ·µÄ£¬Òò ......
1990£1994£ºJavaÔµÆð
Larry Wall˵£¬ÓÅÐã³ÌÐòÔ±Ó¦ÓеÄÈý¸öÌØµã:ÀÁ¶è¡¢¼±ÔêºÍ°ÁÂý¡£Java¾ÍÊǵ®ÉúÔÚһȺÀÁ¶è¡¢¼±Ôê¶ø°ÁÂýµÄ³ÌÐòÌì²ÅÖ®ÖС£
1990Äê12Ô£¬SunµÄ¹¤³ÌʦPatrick Naughton±»µ±Ê±Ôã¸âµÄSun C++¹¤¾ßÕÛÄ¥µÄ¿ì·èÁË¡£Ëû´óÉù±§Ô¹£¬²¢ÍþвҪÀ뿪SunתͶµ±Ê±ÔÚSteve JobsÁ쵼֮ϵÄNeXT¹«Ë¾¡£Áìµ¼²ãΪÁËÁôסËû£¬¸øËû ......
Ò»¡¢ÀûÓÃClass.forNameº¯Êý£¨ÓÃjava¿ª·¢B/SģʽµÄ³ÌÐò£© 1.´úÂëÈçÏ£º //×¢²áÇý¶¯³ÌÐò
public boolean connectDb() {
try {
Class.forName("oracle.jdbc.driver.OracleDriver");
return true;
} catch (ClassNotFoundException e) {
System.out.println(e);
return false;
}
}
......
1¡¢´´½¨ Statement ¶ÔÏó
½¨Á¢Á˵½Ìض¨Êý¾Ý¿âµÄÁ¬½ÓÖ®ºó£¬¾Í¿ÉÓøÃÁ¬½Ó·¢ËÍ SQL Óï¾ä¡£Statement ¶ÔÏóÓà Connection µÄ·½·¨ createStatement ´´½¨£¬ÈçÏÂÁдúÂë¶ÎÖÐËùʾ£º
Connection con = DriverManager.getConnection(url, "sunny", "");
Statement stmt = con.createStatement();
ΪÁËÖ´ÐÐ Statement ¶ÔÏ󣬱»· ......
ǿתһ¸öÊý×éÀàÐÍ ±ØÐëҪѻ·±éÀú
±ÈÈç
B[] b;
//A¼Ì³ÐB;
A[] a= (A[])b;
ÕâÑùתÊDz»Äܳɹ¦µÄ
ÕâÊÇΪʲô£¿ÈçºÎ½â¾ö£¿
Ò²¾ÍÊÇ˵
for( int i=0; i<b.length; i++ )
{
a[i]=(A)b[i];
}
ÕâÑùת£¡ ......