JAVAµÄÈÝÆ÷---List,Map,Set
Collection
©ÀList
©¦©ÀLinkedList
©¦©ÀArrayList
©¦©¸Vector
©¦¡¡©¸Stack
©¸Set
Map
©ÀHashtable
©ÀHashMap
©¸WeakHashMap
Collection½Ó¿Ú
¡¡¡¡CollectionÊÇ×î»ù±¾µÄ¼¯ºÏ½Ó¿Ú£¬Ò»¸öCollection´ú±íÒ»×éObject£¬¼´CollectionµÄÔªËØ£¨Elements£©¡£Ò»Ð© CollectionÔÊÐíÏàͬµÄÔªËØ¶øÁíһЩ²»ÐС£Ò»Ð©ÄÜÅÅÐò¶øÁíһЩ²»ÐС£Java SDK²»Ìṩֱ½Ó¼Ì³Ð×ÔCollectionµÄÀ࣬Java SDKÌṩµÄÀà¶¼ÊǼ̳Ð×ÔCollectionµÄ“×Ó½Ó¿Ú”ÈçListºÍSet¡£
¡¡¡¡ËùÓÐʵÏÖCollection½Ó¿ÚµÄÀà¶¼±ØÐëÌṩÁ½¸ö±ê×¼µÄ¹¹Ô캯Êý£ºÎÞ²ÎÊýµÄ¹¹Ô캯ÊýÓÃÓÚ´´½¨Ò»¸ö¿ÕµÄCollection£¬ÓÐÒ»¸ö Collection²ÎÊýµÄ¹¹Ô캯ÊýÓÃÓÚ´´½¨Ò»¸öеÄCollection£¬Õâ¸öеÄCollectionÓë´«ÈëµÄCollectionÓÐÏàͬµÄÔªËØ¡£ºóÒ»¸ö¹¹Ô캯ÊýÔÊÐíÓû§¸´ÖÆÒ»¸öCollection¡£
¡¡¡¡ÈçºÎ±éÀúCollectionÖеÄÿһ¸öÔªËØ£¿²»ÂÛCollectionµÄʵ¼ÊÀàÐÍÈçºÎ£¬Ëü¶¼Ö§³ÖÒ»¸öiterator()µÄ·½·¨£¬¸Ã·½·¨·µ»ØÒ»¸öµü´ú×Ó£¬Ê¹Óøõü´ú×Ó¼´¿ÉÖðÒ»·ÃÎÊCollectionÖÐÿһ¸öÔªËØ¡£µäÐ͵ÄÓ÷¨ÈçÏ£º
¡¡¡¡¡¡¡¡Iterator it = collection.iterator(); // »ñµÃÒ»¸öµü´ú×Ó
¡¡¡¡¡¡¡¡while(it.hasNext()) { ......
ÏÂÃæÊÇ20¸ö·Ç³£ÓÐÓõÄJava³ÌÐòƬ¶Î£¬Ï£ÍûÄܶÔÄãÓÐÓá£
¡¡¡¡1. ×Ö·û´®ÓÐÕûÐ͵ÄÏ໥ת»»
¡¡¡¡Java´úÂë
¡¡¡¡String a = String.valueOf(2); »òÕß String a=2+""; //integer to numeric string
¡¡¡¡int i = Integer.parseInt(a); //numeric string to an int
¡¡¡¡2. ÏòÎļþĩβÌí¼ÓÄÚÈÝ
¡¡¡¡Java´úÂë
¡¡¡¡BufferedWriter out = null;
¡¡¡¡try {
¡¡¡¡out = new BufferedWriter(new FileWriter(”filename”, true));
¡¡¡¡out.write(”aString”);
¡¡¡¡} catch (IOException e) {
¡¡¡¡// error processing code
¡¡¡¡} finally {
¡¡¡¡if (out != null) {
¡¡¡¡out.close();
¡¡¡¡}
¡¡¡¡}
¡¡¡¡3. µÃµ½µ±Ç°·½·¨µÄÃû×Ö
¡¡¡¡Java´úÂë
¡¡¡¡String methodName = Thread.currentThread().getStackTrace()[1].getMethodName();
¡¡¡¡4. ת×Ö·û´®µ½ÈÕÆÚ
¡¡¡¡Java´úÂë
¡¡¡¡java.util.Date = java.text.DateFormat.getDateInstance().parse(date String);
¡¡¡¡»òÕßÊÇ£º
¡¡¡¡SimpleDateFormat format = new SimpleDateFormat( "dd.MM.yyyy" );
¡¡¡¡Date date = format.parse( myString );
¡¡¡¡5. ʹÓÃJDBCÁ´½ÓOracle
¡¡¡¡Java´úÂë
¡¡¡ ......
Java´úÂë
long startTime=System.currentTimeMillis(); //»ñÈ¡¿ªÊ¼Ê±¼ä
doSomeThing(); //²âÊԵĴúÂë¶Î
long endTime=System.currentTimeMillis(); //»ñÈ¡½áÊøÊ±¼ä
System.out.println("³ÌÐòÔËÐÐʱ¼ä£º "+(endTime-startTime)+"ms");
µÚ¶þÖÖÊÇÒÔÄÉÃëΪµ¥Î»¼ÆËãµÄ¡£
long startTime=System.nanoTime(); //»ñÈ¡¿ªÊ¼Ê±¼ä
doSomeThing(); //²âÊԵĴúÂë¶Î
long endTime=System.nanoTime(); //»ñÈ¡½áÊøÊ±¼ä
System.out.println("³ÌÐòÔËÐÐʱ¼ä£º "+(endTime-startTime)+"ns");
˳±ã²¹ÉÏcµÄ
clock_t start,end;
start=clock();
end=clock();
cout<<"time used: "<<end-start<<"ms"<<endl;
......
The goal for this chapter is to introduce you to Java's native methods. If you are new to Java, you may not know what native methods are, and even if you are an experienced Java developer, you may not have had a reason to learn more about native methods. At the conclusion of this chapter you should have a better understanding of what native methods are, when and why you may want to use them, and the consequences of using them. You should also have a basic understanding of how native methods work. You will then be more than ready to tackle the next three chapters, which dive into the nitty-gritty details of Java's Native Methods.
What Is a Native Method?
Simply put, a native method is the Java interface to non-Java code. It is Java's link to the "outside world." More specifically, a native method is a Java method whose implementation is provided by non-Java code, most likely C (see Figure 30.1). This feature is not special to Java. Most languages provide some mechanism to call routine ......
Ò»¡¢Ç°ÑÔ
±¾Îļٶ¨ÄãÓÐÒ»¶¨µÄJ2EE¿ª·¢¾Ñ飬Õâ¸ö½Ì³ÌûÓйý¶àµÄÉæ¼°»ù´¡ÖªÊ¶ºÍ¿ª·¢Ï¸½Ú¡£Èç¹ûÔÚÔĶÁ¹ý³Ì³öÓÐʲôÎÊÌ⣬»¹ÇëÓëÎÒÁªÏµ½»Á÷¡£
Èç¹ûʹÓÃGOOGLE¡¢BAIDUµÈËÑË÷¹¤¾ß£¬ËÑË÷WebServiceµÄÏà¹ØÖªÊ¶£¬¿ÉÒԲ鵽N¶àµÄÍøÒ³£¬ÎÒ¾ÍÊÇͨ¹ýÕâÐ©ÍøÒ³µÄѧϰ£¬Öð½¥ÕÆÎÕÁËЩWebServiceµÄÏà¹ØÖªÊ¶¡£ÕâÀï¶ÔÄÇЩÎÞ˽·îÏ×֪ʶµÄÈËÒ»²¢±íʾ¸Ðл¡£
¡¡
¡¡ÍøÉϹØÓÚWebServiceµÄÀý×Ó£¬¶àÊÇһЩ¼òµ¥µÃ²»ÄÜÔÙ¼òµ¥µÄhello
worldµÄÀý×Ó£¬¼òµ¥µÃÒÔÖÁÓÚÄã¶ÔWebServiceûÓÐʲô¸Ð¾õ¡£ÓÐÁËWebServiceµÄ»ù±¾ÖªÊ¶ºó£¬ÎÒÒ»Ö±ÔÙÏ룬¿ÉÒÔ°ÑʲôÑùµÄ¼´¼òµ¥ÓÖʵÓõĶ«¶«×ö³ÉWebService£¬¿ªÕ¹Ê¾Ò»ÏÂÆä¹¦ÄÜÌØµã¡£½ñÌìÖÕÓÚÏëµ½Ò»¸ö£º¼ÆÊýÆ÷£¬¼ÆÊýÆ÷ÓõñȽ϶࣬¹¦ÄܱȽ϶ÀÁ¢£¬×ö³ÉWebService¿ÉÒÔÒ»ÀÍÓÀÒÝΪ²»Í¬ÏµÍ³£¨²»¹ÜÊÇJSP»¹ASP£¬ÕâÊÇWebServiceµÄÍ»³öÓŵ㣩¡¢²»Í¬Ó¦ÓýÚÊ¡´ËÀà±àÂ빤×÷£¬¿ÉÒÔ˵ÒÔºóÔÙÒ²²»ÓÃд¼ÆÊýÆ÷ÁË¡£Ö»ÒªÓþÍÐÐÁË¡£
˵ÁËÕâô¶à·Ï»°£¬ÏÂÃæÎÒÃÇ¿ªÊ¼¡£±¾½Ì³Ì½éÉÜÒ»ÏÂWebService»·¾³´î½¨¡¢·þÎñ²¿ÊðµÄÏà¹ØÖªÊ¶£¬È»ºó½éÉÜÒ»¸ö¼ÆÊýÆ÷µÄ¿ª·¢¡£
¶þ¡¢»ù´¡¹¤×÷
1.¿ª·¢»·¾³
¡¡¡¡ ÎÒʹÓÃaxis×öΪWeb ServiceÒýÇæ£¬ËüÊÇApache ......
ÇëÌṩһ¸ö¶ÔiµÄÉùÃ÷£¬½«ÏÂÃæµÄÑ»·×ª±äΪһ¸öÎÞÏÞÑ»·£º
while (i != i) {
}
Õâ¸öÑ»·¿ÉÄܱÈǰһ¸ö»¹ÒªÊ¹È˸е½À§»ó¡£²»¹ÜÔÚËüÇ°Ãæ×÷ºÎÖÖÉùÃ÷£¬Ëü¿´ÆðÀ´È·ÊµÓ¦¸ÃÁ¢¼´ÖÕÖ¹¡£Ò»¸öÊý×Ö×ÜÊǵÈÓÚËü×Ô¼º£¬¶ÔÂð£¿
¶Ô£¬µ«ÊÇIEEE 754¸¡µãËãÊõ±£ÁôÁËÒ»¸öÌØÊâµÄÖµÓÃÀ´±íʾһ¸ö²»ÊÇÊý×ÖµÄÊýÁ¿[IEEE 754]¡£Õâ¸öÖµ¾ÍÊÇNaN£¨“²»ÊÇÒ»¸öÊý×Ö£¨Not a Number£©”µÄËõд£©£¬¶ÔÓÚËùÓÐûÓÐÁ¼ºÃµÄÊý×Ö¶¨ÒåµÄ¸¡µã¼ÆË㣬ÀýÈç0.0/0.0£¬ÆäÖµ¶¼ÊÇËü¡£¹æ·¶ÖÐÃèÊöµÀ£¬NaN²»µÈÓÚÈκθ¡µãÊýÖµ£¬°üÀ¨Ëü×ÔÉíÔÚÄÚ[JLS 15.21.1]¡£Òò´Ë£¬Èç¹ûiÔÚÑ»·¿ªÊ¼Ö®Ç°±»³õʼ»¯ÎªNaN£¬ÄÇôÖÕÖ¹Ìõ¼þ²âÊÔ(i != i)µÄ¼ÆËã½á¹û¾ÍÊÇtrue£¬Ñ»·¾ÍÓÀÔ¶²»»áÖÕÖ¹¡£ºÜÆæ¹Öµ«È´ÊÇÊÂʵ¡£
Äã¿ÉÒÔÓÃÈκμÆËã½á¹ûΪNaNµÄ¸¡µãËãÊõ±í´ïʽÀ´³õʼ»¯i£¬ÀýÈ磺
double i = 0.0 / 0.0;
ͬÑù£¬ÎªÁ˱í´ïÇåÎú£¬Äã¿ÉÒÔʹÓñê×¼Àà¿âÌṩµÄ³£Á¿£º
double i = Double.NaN;
NaN»¹ÓÐÆäËûµÄ¾ªÈËÖ®´¦¡£Èκθ¡µã²Ù×÷£¬Ö»ÒªËüµÄÒ»¸ö»ò¶à¸ö²Ù×÷ÊýΪNaN£¬ÄÇôÆä½á¹ûΪNaN¡£ÕâÌõ¹æÔòÊǷdz£ºÏÀíµÄ£¬µ«ÊÇËüÈ´¾ßÓÐÆæ¹ÖµÄ½á¹û¡£ÀýÈ磬ÏÂÃæµÄ³ÌÐò½«´òÓ¡false£º
class Test {
public static void main(String[] args) {
double i = ......