<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    JAVA—咖啡館

    ——?dú)g迎訪問(wèn)rogerfan的博客,常來(lái)《JAVA——咖啡館》坐坐,喝杯濃香的咖啡,彼此探討一下JAVA技術(shù),交流工作經(jīng)驗(yàn),分享JAVA帶來(lái)的快樂(lè)!本網(wǎng)站部分轉(zhuǎn)載文章,如果有版權(quán)問(wèn)題請(qǐng)與我聯(lián)系。

    BlogJava 首頁(yè) 新隨筆 聯(lián)系 聚合 管理
      447 Posts :: 145 Stories :: 368 Comments :: 0 Trackbacks

    05 2009 檔案

         摘要: Java NIO非堵塞應(yīng)用通常適用用在I/O讀寫等方面,我們知道,系統(tǒng)運(yùn)行的性能瓶頸通常在I/O讀寫,包括對(duì)端口和文件的操作上,過(guò)去,在打開一個(gè)I/O通道后,read()將一直等待在端口一邊讀取字節(jié)內(nèi)容,如果沒(méi)有內(nèi)容進(jìn)來(lái),read()也是傻傻的等,這會(huì)影響我們程序繼續(xù)做其他事情,那么改進(jìn)做法就是開設(shè)線程,讓線程去等待,但是這樣做也是相當(dāng)耗費(fèi)資源的。

    Java NIO非堵塞技術(shù)實(shí)際是采取Reactor模式,或者說(shuō)是Observer模式為我們監(jiān)察I/O端口,如果有內(nèi)容進(jìn)來(lái),會(huì)自動(dòng)通知我們,這樣,我們就不必開啟多個(gè)線程死等,從外界看,實(shí)現(xiàn)了流暢的I/O讀寫,不堵塞了。
      閱讀全文
    posted @ 2009-05-31 15:17 rogerfan 閱讀(685) | 評(píng)論 (0)  編輯

         摘要: //根據(jù)不同的難度產(chǎn)生隨機(jī)字母和數(shù)字
    for(int i=0; readomNumStart.length()<4; i++) {
    if(difficult == 1) {

    //產(chǎn)生隨機(jī)的0-9的數(shù)字
    a = String.valueOf((int)(Math.random() * 10)) ;
    }   閱讀全文
    posted @ 2009-05-14 11:40 rogerfan 閱讀(454) | 評(píng)論 (1)  編輯

         摘要: 歸納一些網(wǎng)上取JAVA路徑的方法:

    注明:如果從ANT啟動(dòng)程序,this.getClass().getResource("")取出來(lái)的比較怪,直接用JAVA命令行調(diào)試就可成功。
     
    得到classpath和當(dāng)前類的絕對(duì)路徑的一些方法

    獲得CLASSPATH之外路徑的方法:
    URL base = this.getClass().getResource(""); //先獲得本類的所在位置,如/home/popeye/testjava/build/classes/net/
    String path = new File(base.getFile(), "../../../"+name).getCanonicalPath(); //就可以得到/home/popeye/testjava/name   閱讀全文
    posted @ 2009-05-14 11:39 rogerfan 閱讀(399) | 評(píng)論 (0)  編輯

         摘要: 主要使用的是java.util.Robot類來(lái)捕獲屏幕,可以實(shí)現(xiàn)對(duì)屏幕一個(gè)矩形區(qū)域的捕獲,通過(guò)這個(gè)類,我們也可以實(shí)現(xiàn)一個(gè)遠(yuǎn)程桌面控制的程序。


    package com.qiu.util;
    import java.io.*;
    import java.net.*;
    import javax.swing.*;
    import java.awt.*;
    import java.awt.event.*;
    import java.awt.image.*;
    import javax.imageio.*;
    import java.io.*;
    /** *//**@Author Qiu_BaiChao
    *一個(gè)簡(jiǎn)單的屏幕抓圖
      閱讀全文
    posted @ 2009-05-14 11:37 rogerfan 閱讀(300) | 評(píng)論 (0)  編輯

         摘要: 由于本人的一個(gè)低級(jí)失誤,造成結(jié)論錯(cuò)誤,for才是最終的勝者。foreach和iterator是類似的機(jī)制,性能都不是很好。以下代碼已經(jīng)重新調(diào)整,再次道歉。

    以前一直有人說(shuō),foreach的性能有損失,不建議使用,今天特意測(cè)試了一下,結(jié)果是 for方式的性能最好,foreach次之,而Iterator循環(huán)性能最差..

    1 完整的測(cè)試代碼
    view plaincopy to clipboardprint?
    import java.util.ArrayList;
    import java.util.Iterator;
    import java.util.List;
    /**
    * 測(cè)試JAVA各種循環(huán)的性能。

    * for 方式的性能最好,foreach次之,而Iterator循環(huán)性能最差。
      閱讀全文
    posted @ 2009-05-14 11:34 rogerfan 閱讀(360) | 評(píng)論 (0)  編輯

         摘要: Collection接口
      Collection是最基本的集合接口,一個(gè)Collection代表一組Object,即Collection的元素(Elements)。一些 Collection允許相同的元素而另一些不行。一些能排序而另一些不行。Java SDK不提供直接繼承自Collection的類, Java SDK提供的類都是繼承自Collection的“子接口”如List和Set。
      所有實(shí)現(xiàn)Collection接口的類都必須提供兩個(gè)標(biāo)準(zhǔn)的構(gòu)造函數(shù):無(wú)參數(shù)的構(gòu)造函數(shù)用于創(chuàng)建一個(gè)空的Collection,有一個(gè) Collection參數(shù)的構(gòu)造函數(shù)用于創(chuàng)建一個(gè)新的 Collection,這個(gè)新的Collection與傳入的Collection有相同的元素。后一個(gè)構(gòu)造函數(shù)允許用戶復(fù)制一個(gè)Collection。
      如何遍歷Collection中的每一個(gè)元素?不論Collection的實(shí)際類型如何,它都支持一個(gè)iterator()的方法,該方法返回一個(gè)迭代子,使用該迭代子即可逐一訪問(wèn)Collection中每一個(gè)元素。典型的用法如下:
        Iterat  閱讀全文
    posted @ 2009-05-14 09:58 rogerfan 閱讀(878) | 評(píng)論 (0)  編輯

         摘要: 編輯
    作用域 功能 快捷鍵
    文本編輯器 查找上一個(gè) Ctrl+Shift+K
    文本編輯器 查找下一個(gè) Ctrl+K
    全局 恢復(fù)上一個(gè)選擇 Alt+Shift+↓
    全局 快速修正 Ctrl1+1
    全局 內(nèi)容輔助 Alt+/
    全局 上下文信息 Alt+?Alt+Shift+?Ctrl+Shift+Space
    Java編輯器 顯示工具提示描述 F2
    Java編輯器 選擇封裝元素 Alt+Shift+↑
    Java編輯器 選擇上一個(gè)元素 Alt+Shift+←
    Java編輯器 選擇下一個(gè)元素 Alt+Shift+→
    文本編輯器 增量查找 Ctrl+J
    文本編輯器 增量逆向查找 Ctrl+Shift+J
    全局 重做 Ctrl+Y   閱讀全文
    posted @ 2009-05-13 11:47 rogerfan 閱讀(384) | 評(píng)論 (0)  編輯

         摘要: 1.java.util.Calendar
    Calendar 類是一個(gè)抽象類,它為特定瞬間與一組諸如 YEAR、MONTH、DAY_OF_MONTH、HOUR 等 日歷字段之間的轉(zhuǎn)換提供了一些方法,并為操作日歷字段(例如獲得下星期的日期)提供了一些方法。瞬間可用毫秒值來(lái)表示,它是距歷元(即格林威治標(biāo)準(zhǔn)時(shí)間 1970 年 1 月 1 日的 00:00:00.000,格里高利歷)的偏移量。

    例:

    1Calendar cal = Calendar.getInstance();//使用默認(rèn)時(shí)區(qū)和語(yǔ)言環(huán)境獲得一個(gè)日歷。
    2cal.add(Calendar.DAY_OF_MONTH, -1);//取當(dāng)前日期的前一天.
    3
    4cal.add(Calendar.DAY_OF_MONTH, +1);//取當(dāng)前日期的后一天.
    5
    6//通過(guò)格式化輸出日期
    7java.text.SimpleDateFormat format = new java.text.S  閱讀全文
    posted @ 2009-05-13 11:32 rogerfan 閱讀(311) | 評(píng)論 (0)  編輯

    主站蜘蛛池模板: 久久久久久AV无码免费网站下载| 一级毛片免费播放视频| 无码国产精品一区二区免费模式| 国产在线观看xxxx免费| 亚洲精品美女久久久久99小说| 伊人婷婷综合缴情亚洲五月| 国产成人亚洲午夜电影| 日韩免费无砖专区2020狼| 国产亚洲一卡2卡3卡4卡新区| 精品一区二区三区高清免费观看| 99久久免费精品高清特色大片| 一个人看的www在线观看免费| 亚洲AV无码一区二三区 | 国产又黄又爽又刺激的免费网址| 国产精品亚洲二区在线观看| 春意影院午夜爽爽爽免费| avtt亚洲天堂| 国产日韩一区二区三免费高清| 成人无码区免费A片视频WWW| 亚洲一区欧洲一区| 国产高清在线免费视频| 国产精品免费久久| 色婷婷亚洲十月十月色天| 成年女人午夜毛片免费看| 国产成人精品亚洲一区| 亚洲VA中文字幕无码毛片| 18禁免费无码无遮挡不卡网站 | 国产成人精品免费直播| 国产精品免费αv视频| 亚洲av丰满熟妇在线播放| 野花高清在线电影观看免费视频 | 亚洲欧美日韩中文无线码 | 亚洲大尺度无码专区尤物| 青青青国产在线观看免费| 日产久久强奸免费的看| 久久久久亚洲精品成人网小说| 午夜肉伦伦影院久久精品免费看国产一区二区三区 | a级黄色毛片免费播放视频| 亚洲国产成人久久精品影视| 在线观看视频免费国语| 大地影院MV在线观看视频免费|