package com.chinacache.utils;
import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import org.apache.log4j.Logger;
public class FileUtils {
private static final Logger logger = Logger.getLogger(FileUtils.class);
/**
* ÒÆ¶¯Îļþµ½Ö¸¶¨Ä¿Â¼
*
* @param srcFile
* ±»Òƶ¯Îļþ
* @param directory
* Ä¿±êĿ¼
*/
public static void moveFile(File srcFile, File directory) {
renameFile(srcFile, new File(directory, srcFile.getName()));
}
public static void renameFile(File srcFile, File newFile) {
// ²»´æÔÚÍ˳ö
if (srcFile.exists()) {
try {
org.apache.commons.io.FileUtils.moveFile(srcFile, newFile);
} catch (IOException e) {
logger.error("move file [" + srcFile.getAbsolutePath()
+ "] error", e);
}
org.apache.commons.io.FileUtils.deleteQuietly(srcFile);
}
}
/**
* ÒÆ¶¯Ò»ÅúÎļþµ½Ö¸¶¨Ä¿Â¼
*
* @param srcFiles
* Îļþ¼¯ºÏ
* ......
ºÃ¾ÃÁË£¬¶¼ÏëÏòѧϰJAVAµÄÐÂÈËдµã¶«Î÷£¬ÒòΪÎÒʵÔÚ¿´²»ÏÂÈ¥ÁË£¬¿´²»ÏÂÈ¥ºÜ¶àÎóµ¼JAVAѧϰÕߵĹ۵㣬±é¼°ÌìÏ£¡ÍøÂçÈúõĶ«Î÷Á÷ÐУ¬¿ÉÊÇÍùÍùÒ²ÈôíµÄ¶«Î÷³öÏֵĴÎÊý¶àÁ˱äµÄºÃÏñÕýÈ·ÁË£¬ÈýÈ˳ɻ¢£¬Ö¸Â¹ÎªÂíËÆºõÔÚÍøÂçÀï¸ü¼ÓÈÝÒ×·¢Éú£¬ºÃÁË·Ï»°²»Ëµ£¬Çë¿´ÎÒϸϸÏòÄãµÀÀ´¡£
ÃØÃÜÒ»£¬Ñ§Ï°JAVAºÃδ±Ø¿ÉÒÔÕÒµ½JAVA¹¤×÷£¬ÒòΪ¿ª·¢¹¤×÷ÊÇÓÐÃż÷µÄ¡£
ÔÚµ±Ç°Èí¼þ¿ª·¢¹¤×÷Ò²ÊôÓÚнˮÏà¶ÔÆ«¸ßµÄ¹¤×÷ÁË£¬ÕâÑù¾ºÕùµÄÈ˶àÁË£¬ÓÃÈËÆóÒµÃ÷ÏԾͻá
ÉèÖÃÃż÷£¬ÒòΪÄÇÑùÕмµÄ³É±¾»áС¡£ÄÇôÔõôÉèÖÃÃż÷ÄØ£¬µ±È»ÊÇѧÀú£¬×¨ÒµºÍѧУÁË¡£ÔÚÒ»
Ïß³ÇÊбȽÏÊʺÏ×öÈí¼þ¿ª·¢µÄÃż÷´ó¸ÅÊÇ£º±¾¿Æ£¬¼ÆËã»úÏà¹Ø×¨Òµ£¬Ñ§Ð£×îµÍÊÇÕý¹æÔºÐ£¹ú¼Òͳ
ÕС£È»ºóÓÃÕâÈý¸öÌõ¼þÈ¥¿ò£¬Èç¹ûÕâÈý¸öÌõ¼þÈκÎÒ»¸ö²»Âú×㣬ÄÇôÄã¿ÉÒÔÔ¤¼ûµ½ÄãͶ1ǧ·Ý
¸öÈ˼òÀúÒ²ÐíÖ»ÓÐÒ»·ÝÑûÇëÃæÊÔ֪ͨ£¬¿É×ÐϸÌýºÃÏñÊǸö·ÇÈí¼þ¹«Ë¾£¬ÉõÖÁÊÇ×ö±£Ïյģ¡
ËùÒÔÈç¹ûÄãÏëͨ¹ýÑ§Ï ......
¶¨Òå°´Öµ´«µÝºÍ°´ÒýÓô«µÝÕâÁ½¸öÊõÓïÊÇÖØÒªµÄ¡£
°´Öµ´«µÝÒâζ×ŵ±½«Ò»¸ö²ÎÊý´«µÝ¸øÒ»¸öº¯Êýʱ£¬º¯Êý½ÓÊÕµÄÊDzÎÊýµÄÒ»¸ö¸±±¾¡£Òò´Ë£¬Èç ¹ûº¯ÊýÐÞ¸ÄÁ˸òÎÊý£¬½ö¸Ä±ä¸±±¾£¬¶øÔʼֵ±£³Ö²»±ä¡£°´ÒýÓô«µÝÒâζ×ŵ±½«Ò»¸ö²ÎÊý´«µÝ¸øÒ»¸öº¯Êýʱ£¬º¯Êý½ÓÊÕµÄÊDzÎÊýµÄÄÚ´æµØÖ·£¬¶ø²»ÊDzÎÊýµÄ¸±±¾¡£Òò ´Ë£¬Èç¹ûº¯ÊýÐÞ¸ÄÁ˸òÎÊý£¬µ÷ÓôúÂëÖеÄÔÊ¼ÖµÒ²ËæÖ®¸Ä±ä¡£
JAVAºÍCÖÐÖ»ÓÐÖµ´«µÝ·½Ê½£¬C++ÖÐÓÐÒýÓô«µÝ·½Ê½
µ«CÖÐÈô´«µÝµÄ²ÎÊýΪµØÖ·£¬Ôò¿ÉÒÔ´ïµ½ÒýÓô«µÝµÄЧ¹û£¬µ«ÈÔÊÇÖµ´«µÝ·½Ê½
void GetMemory(char *p, int num)
{
p= (char *)malloc(sizeof(char) * num);
}
int main(void)
{
char *str = NULL;
GetMemory( str, 100 ); // str ÈÔȻΪ NULL
strcpy(str, "hello"); // ÔËÐдíÎó
return 0;
}
Testº¯ÊýµÄÓï¾äGetMemory(str, 200)²¢Ã»ÓÐʹstr»ñµÃÆÚÍûµÄÄڴ棬strÒÀ¾ÉÊÇNULL£¬ÔÒòÔÚÓÚ (ÕâÀï·¸ÁËÖµ´«µÝµÄ´íÎó,ËäÈ»pÊÇÖ¸Õë,µ«¶ÔÓÚp±¾ÉíÀ´Ëµ,ÕâÀﻹÊÇÖµ´«µÝ.¼´º¯ÊýÉú³ÉÁ˸öÖµºÍpÏàͬµÄchar *ÁÙʱ±äÁ¿£¬¼´pµÄ¿½±´,ΪÕâ¸öÁÙʱָÕë·ÖÅäÁ˿ռä,¶øp²¢Ã»Óиıä.
)
......
¶¨Òå°´Öµ´«µÝºÍ°´ÒýÓô«µÝÕâÁ½¸öÊõÓïÊÇÖØÒªµÄ¡£
°´Öµ´«µÝÒâζ×ŵ±½«Ò»¸ö²ÎÊý´«µÝ¸øÒ»¸öº¯Êýʱ£¬º¯Êý½ÓÊÕµÄÊDzÎÊýµÄÒ»¸ö¸±±¾¡£Òò´Ë£¬Èç ¹ûº¯ÊýÐÞ¸ÄÁ˸òÎÊý£¬½ö¸Ä±ä¸±±¾£¬¶øÔʼֵ±£³Ö²»±ä¡£°´ÒýÓô«µÝÒâζ×ŵ±½«Ò»¸ö²ÎÊý´«µÝ¸øÒ»¸öº¯Êýʱ£¬º¯Êý½ÓÊÕµÄÊDzÎÊýµÄÄÚ´æµØÖ·£¬¶ø²»ÊDzÎÊýµÄ¸±±¾¡£Òò ´Ë£¬Èç¹ûº¯ÊýÐÞ¸ÄÁ˸òÎÊý£¬µ÷ÓôúÂëÖеÄÔÊ¼ÖµÒ²ËæÖ®¸Ä±ä¡£
JAVAºÍCÖÐÖ»ÓÐÖµ´«µÝ·½Ê½£¬C++ÖÐÓÐÒýÓô«µÝ·½Ê½
µ«CÖÐÈô´«µÝµÄ²ÎÊýΪµØÖ·£¬Ôò¿ÉÒÔ´ïµ½ÒýÓô«µÝµÄЧ¹û£¬µ«ÈÔÊÇÖµ´«µÝ·½Ê½
void GetMemory(char *p, int num)
{
p= (char *)malloc(sizeof(char) * num);
}
int main(void)
{
char *str = NULL;
GetMemory( str, 100 ); // str ÈÔȻΪ NULL
strcpy(str, "hello"); // ÔËÐдíÎó
return 0;
}
Testº¯ÊýµÄÓï¾äGetMemory(str, 200)²¢Ã»ÓÐʹstr»ñµÃÆÚÍûµÄÄڴ棬strÒÀ¾ÉÊÇNULL£¬ÔÒòÔÚÓÚ (ÕâÀï·¸ÁËÖµ´«µÝµÄ´íÎó,ËäÈ»pÊÇÖ¸Õë,µ«¶ÔÓÚp±¾ÉíÀ´Ëµ,ÕâÀﻹÊÇÖµ´«µÝ.¼´º¯ÊýÉú³ÉÁ˸öÖµºÍpÏàͬµÄchar *ÁÙʱ±äÁ¿£¬¼´pµÄ¿½±´,ΪÕâ¸öÁÙʱָÕë·ÖÅäÁ˿ռä,¶øp²¢Ã»Óиıä.
)
......
Java: class , objects
1 Inheritance(¼Ì³Ð)µÄ¹Ø¼ü×Öextends
class MountainBike extends Bicycle {
}
µ«ÊDz»ÄܶàÖØ¼Ì³Ð¡£²»¹ý¿ÉÒÔͨ¹ýimplements¶à¸öinterfaceÀ´ÊµÏÖÀàËÆµÄ¶«Î÷
2 interface
interface Bicycle {
void changeCadence(int newValue); // wheel revolutions per minute
void changeGear(int newValue);
void speedUp(int increment);
void applyBrakes(int decrement);
}
class ACMEBicycle implements Bicycle {
// remainder of this class implemented as before
}
¿ÉʵÏÖ(implements)¶à¸öinterface
class MyClass extends MySuperClass implements YourInterface {
//field, constructor, and method declarations
}
means that MyClass is a subclass of MySuperClass and that it implements the YourInterface interface
3 package
A package is a namespace that organizes a set of related classes and interfaces.
4 Ac ......
ÈÕ³£²Ù×÷Öг£¼ûµÄÅÅÐò·½·¨ÓУºÃ°ÅÝÅÅÐò¡¢¿ìËÙÅÅÐò¡¢Ñ¡ÔñÅÅÐò¡¢²åÈëÅÅÐò¡¢Ï£¶ûÅÅÐò£¬ÉõÖÁ»¹ÓлùÊýÅÅÐò¡¢¼¦Î²¾ÆÅÅÐò¡¢Í°ÅÅÐò¡¢¸ë³²ÅÅÐò¡¢¹é²¢ÅÅÐòµÈ¡£
ðÅÝÅÅÐòÊÇÒ»ÖÖ¼òµ¥µÄÅÅÐòËã·¨¡£ËüÖØ¸´µØ×߷ùýÒªÅÅÐòµÄÊýÁУ¬Ò»´Î±È½ÏÁ½¸öÔªËØ£¬Èç¹ûËûÃǵÄ˳Ðò´íÎó¾Í°ÑËûÃǽ»»»¹ýÀ´¡£×ß·ÃÊýÁеŤ×÷ÊÇÖØ¸´µØ½øÐÐÖ±µ½Ã»ÓÐÔÙÐèÒª½»»»£¬Ò²¾ÍÊÇ˵¸ÃÊýÁÐÒѾÅÅÐòÍê³É¡£Õâ¸öËã·¨µÄÃû×ÖÓÉÀ´ÊÇÒòΪԽСµÄÔªËØ»á¾Óɽ»»»ÂýÂý“¸¡”µ½ÊýÁеĶ¥¶Ë¡£
+ expand sourceview plaincopy to clipboardprint?
/**
* ðÅÝ·¨ÅÅÐò<br/>
* <ul>
* <li>±È½ÏÏàÁÚµÄÔªËØ¡£Èç¹ûµÚÒ»¸ö±ÈµÚ¶þ¸ö´ó£¬¾Í½»»»ËûÃÇÁ½¸ö¡£</li>
* <li>¶Ôÿһ¶ÔÏàÁÚÔªËØ×÷ͬÑùµÄ¹¤×÷£¬´Ó¿ªÊ¼µÚÒ»¶Ôµ½½áβµÄ×îºóÒ»¶Ô¡£ÔÚÕâÒ»µã£¬×îºóµÄÔªËØÓ¦¸Ã»áÊÇ×î´óµÄÊý¡£</li>
* <li>Õë¶ÔËùÓеÄÔªËØÖØ¸´ÒÔÉϵIJ½Ö裬³ýÁË×îºóÒ»¸ö¡£</li>
* <li>³ÖÐøÃ¿´Î¶ÔÔ½À´Ô½ÉÙµÄÔªËØÖØ¸´ÉÏÃæµÄ²½Ö裬ֱµ½Ã»ÓÐÈκÎÒ»¶ÔÊý×ÖÐèÒª±È½Ï¡£</li>
* </ul>
* &n ......
²åÈëÅÅÐòµÄ¹¤×÷ÔÀíÊÇͨ¹ý¹¹½¨ÓÐÐòÐòÁУ¬¶ÔÓÚδÅÅÐòÊý¾Ý£¬ÔÚÒÑÅÅÐòÐòÁÐÖдӺóÏòǰɨÃ裬ÕÒµ½ÏàӦλÖò¢²åÈë¡£Æä¾ßÌå²½Öè²Î¼û´úÂë¼°×¢ÊÍ¡£
view plaincopy to clipboardprint?
/**
* ²åÈëÅÅÐò<br/>
* <ul>
* <li>´ÓµÚÒ»¸öÔªËØ¿ªÊ¼£¬¸ÃÔªËØ¿ÉÒÔÈÏΪÒѾ±»ÅÅÐò</li>
* <li>È¡³öÏÂÒ»¸öÔªËØ£¬ÔÚÒѾÅÅÐòµÄÔªËØÐòÁÐÖдӺóÏòǰɨÃè</li>
* <li>Èç¹û¸ÃÔªËØ£¨ÒÑÅÅÐò£©´óÓÚÐÂÔªËØ£¬½«¸ÃÔªËØÒÆµ½ÏÂһλÖÃ</li>
* <li>ÖØ¸´²½Öè3£¬Ö±µ½ÕÒµ½ÒÑÅÅÐòµÄÔªËØÐ¡ÓÚ»òÕßµÈÓÚÐÂÔªËØµÄλÖÃ</li>
* <li>½«ÐÂÔªËØ²åÈëµ½¸ÃλÖÃÖÐ</li>
* <li>ÖØ¸´²½Öè2</li>
* </ul>
*
* @param numbers
*/
public static void insertSort(int[] numbers) {
int size = numbers.length, temp, j;
for(int i=1; i<size; i++) {
&nbs ......