青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

The Fourth Dimension Space

枯葉北風寒,忽然年以殘,念往昔,語默心酸。二十光陰無一物,韶光賤,寐難安; 不畏形影單,道途阻且慢,哪曲折,如渡飛湍。斬浪劈波酬壯志,同把酒,共言歡! -如夢令

2016年12月31日 #

人生的高度不在于你學會了什么技術,會做什么事,而取決于價值觀(value)與遠見(vision)

待寫

posted @ 2016-12-31 22:01 abilitytao 閱讀(13030) | 評論 (0)編輯 收藏

2015年1月5日 #

什么是市盈率或稱本益比(P/E Ratio)?

本益比是選股票的重要指標之一,說起本益比這個詞,相信很多人都有聽過,大部分投資者也自認明白和了解本益比的含義,但當你叫他和你解釋時,他卻說了半天你也沒聽懂。 一開始我也以為自己明白和了解本益比,因為本身讀金融系的關系,我知道本益比的計算方式,但最近我終于明白,知道計算本益比和了解本益比是兩回事,方程式始終只是方程式,必須探討其中的含義,了解方程式的的由來,才能一探本益比的真實意義,讓本益比成為選股的武器。 首先先放百度百科的本益比含義:
本益比(price/earning,簡稱P/E) 本益比是某種股票普通股每股市價(股價)與每股盈利的比率。也稱“股價收益比率”或“市價盈利比率(簡稱市盈率)”。英文用PER表示。其計算公式為:本益比=股票市價/每股純利(年)
本益比是某種股票普通股每股市價與每股盈利的比率。所以它也稱為股價收益比率或市價盈利比率。 如此,本益比應該是通常所說的市盈率。
馬來西亞和新加坡財經報章一般將其稱為“本益比”,而香港和中國一般稱作“市盈率”,其實只是稱呼不同,但內容和含義相同,英文則稱為P/E RATIO或者PER,就是PRICE/EARNING RATIO的縮寫。
本益比的計算方式:
Market Value per Share(股票當今價格)
Earnings per Share (EPS)(每股盈利)
股票當今價格也就是股票閉市的價格。
每股盈利則是公司盈利除于股票數量。
例子:一間上市公司擁有100萬股,2012年度公司盈利為50萬。
每股盈利就等于 50萬÷100萬 = 0.50 (每股分得0.50的盈利)
EPS(Earning Per Share) 就是0.50
如果該公司閉市價格為RM2.00 本益比就是2.00/0.50 = 4倍
用白話解釋本益比,一句就搞定了: 本益比其實就是回本年份,如果該股本益比為4倍,代表我們購買該股,4年才能回本。
股價就好比你的投資額,EPS就是我們的回報。 如果該股閉市價格RM2.00,我們購買該股本錢就RM2.00,EPS就是我們的回報,如果該股EPS是0.50,代表我們投資RM2.00,每年能拿回0.50,要4年才能回本,這4年其實就是我們常說的本益比。
預測本益比就是根據該公司今年的盈利,預測明年的盈利,再計算出來的本益比。 本益比其實就是回本年份,如果該公司沒有盈利,你永遠都不能回本,那么該公司就不會有本益比。 馬航就是沒有本益比的最好例子。 很多人可能會說,如果本益比代表回本年份,那么是不是越低越好?那么就表示越快回本。 其實不然,本益比雖然是代表著回本年份,但不一定越低越好,要視公司而定,很多藍籌股的本益比都很高,也有很多垃圾股本益比都很低。 一般上互聯網科技股的本益比都很高。 馬來西亞基本面大師冷眼覺得本益比在10以下的公司,都比較合理,本益比超過10,該股有被高估的可能。
轉自百度知道。

posted @ 2015-01-05 17:20 abilitytao 閱讀(567) | 評論 (0)編輯 收藏

2014年11月19日 #

WebSocket的一些資料

http://www.cnblogs.com/imayi/archive/2012/05/05/2485343.html

posted @ 2014-11-19 22:13 abilitytao 閱讀(911) | 評論 (0)編輯 收藏

2014年11月11日 #

Unix下 壓縮和解壓縮命令

范例: 

.tar 
解包:tar -xvf FileName.tar 
打包:tar -cvf FileName.tar DirName 
(注:tar是打包,不是壓縮!) 
--------------------------------------------- 
.gz 
解壓1:gunzip FileName.gz 
解壓2:gzip -d FileName.gz 
壓縮:gzip FileName 
.tar.gz 
解壓:tar zxvf FileName.tar.gz 
壓縮:tar zcvf FileName.tar.gz DirName 
--------------------------------------------- 
.bz2 
解壓1:bzip2 -d FileName.bz2 
解壓2:bunzip2 FileName.bz2 
壓縮: bzip2 -z FileName 
.tar.bz2 
解壓:tar jxvf FileName.tar.bz2 
壓縮:tar jcvf FileName.tar.bz2 DirName 
--------------------------------------------- 
.bz 
解壓1:bzip2 -d FileName.bz 
解壓2:bunzip2 FileName.bz 
壓縮:未知 
--------------------------------------------- 
.tar.bz 
解壓:tar jxvf FileName.tar.bz 
壓縮:未知 
--------------------------------------------- 
.Z 
解壓:uncompress FileName.Z 
壓縮:compress FileName 
.tar.Z 
解壓:tar Zxvf FileName.tar.Z 
壓縮:tar Zcvf FileName.tar.Z DirName 
--------------------------------------------- 
.tgz 
解壓:tar zxvf FileName.tgz 
壓縮:未知 
.tar.tgz 
解壓:tar zxvf FileName.tar.tgz 
壓縮:tar zcvf FileName.tar.tgz FileName 
--------------------------------------------- 
.zip 
解壓:unzip FileName.zip 
壓縮:zip FileName.zip DirName 
--------------------------------------------- 
.rar 
解壓:rar a FileName.rar 
壓縮:rar e FileName.rar 

--------------------------------------------- 
壓縮解壓縮 
zip文件: 
功能說明:壓縮文件。 

語  法:zip [-AcdDfFghjJKlLmoqrSTuvVwXyz$][-b <工作目錄>][-ll][-n <字尾字符串>][-t <日期時間>][-<壓縮效率>][壓縮文件][文件...][-i <范本樣式>][-x <范本樣式>] 

補充說明:zip是個使用廣泛的壓縮程序,文件經它壓縮后會另外產生具有".zip"擴展名的壓縮文件。 

參  數: 
-A 調整可執行的自動解壓縮文件。 
-b<工作目錄> 指定暫時存放文件的目錄。 

-c 替每個被壓縮的文件加上注釋。 
-d 從壓縮文件內刪除指定的文件。 
-D 壓縮文件內不建立目錄名稱。 
-f 此參數的效果和指定"-u"參數類似,但不僅更新既有文件,如果某些文件原本不存在于壓縮文件內,使用本參數會一并將其加入壓縮文件中。 
-F 嘗試修復已損壞的壓縮文件。 
-g 將文件壓縮后附加在既有的壓縮文件之后,而非另行建立新的壓縮文件。 
-h 在線幫助。 
-i<范本樣式> 只壓縮符合條件的文件。 
-j 只保存文件名稱及其內容,而不存放任何目錄名稱。 
-J 刪除壓縮文件前面不必要的數據。 
-k 使用MS-DOS兼容格式的文件名稱。 
-l 壓縮文件時,把LF字符置換成LF+CR字符。 
-ll 壓縮文件時,把LF+CR字符置換成LF字符。 
-L 顯示版權信息。 
-m 將文件壓縮并加入壓縮文件后,刪除原始文件,即把文件移到壓縮文件中。 
-n<字尾字符串> 不壓縮具有特定字尾字符串的文件。 
-o 以壓縮文件內擁有最新更改時間的文件為準,將壓縮文件的更改時間設成和該文件相同。 
-q 不顯示指令執行過程。 
-r 遞歸處理,將指定目錄下的所有文件和子目錄一并處理。 
-S 包含系統和隱藏文件。 
-t<日期時間> 把壓縮文件的日期設成指定的日期。 
-T 檢查備份文件內的每個文件是否正確無誤。 
-u 更換較新的文件到壓縮文件內。 
-v 顯示指令執行過程或顯示版本信息。 
-V 保存VMS操作系統的文件屬性。 
-w 在文件名稱里假如版本編號,本參數僅在VMS操作系統下有效。 
-x<范本樣式> 壓縮時排除符合條件的文件。 
-X 不保存額外的文件屬性。 
-y 直接保存符號連接,而非該連接所指向的文件,本參數僅在UNIX之類的系統下有效。 
-z 替壓縮文件加上注釋。 
-$ 保存第一個被壓縮文件所在磁盤的卷冊名稱。 
-<壓縮效率> 壓縮效率是一個介于1-9的數值。 

rar文件: 

Rar 用法: rar <命令> -<選項1> ....-<選項N> <操作文檔> <文件...> <@文件列表...> <解壓路徑> h/](J k!P x l"w:G v K q7i6v 

  通常rar命令由一個主命令加若干選項(可選)構成,操作文檔為操作施加的.rar文件對象,文件或文件列表為對操作文檔實現修飾的具體文件或目錄(可選)。 

  Y0`-o r#V r n ~"p9f5N rar常用命令主要有: 

  1) a 添加文件到操作文檔 舉例rar a test.rar file1.txt 

  若test.rar文件不存在,則打包file1.txt文件成test.rar rar a test.rar file2.txt 若test.rar文件已經存在,則添加file2.txt文件到test.rar中(這樣 test.rar中就有兩個文件了)注,如果操作文檔中已有某文件的一份拷貝,則a命令更新該文件 另,對目錄也可以進行操作 eg. rar a test.rar dir1 。 

  2) e test.rar 注,用e解壓的話,不僅原來的file1.txt和file2.txt被解壓到當前目錄,就連dir1里面的所有文件也被解壓到當前目錄下,不能保持壓縮前的目錄結構,如果想保持壓縮前的目錄結構,用x解壓。 

  3) c 對操作文檔添加說明注釋 eg. rar c test.rar 

  (會出現Reading comment from stdin字樣,然后輸入一行或多行注釋,以ctrl+d結束)。 

  4) cf 添加文件注釋,類似上面的c,不過這個是對壓縮文檔中每個文件進行注釋 cw 將文檔注釋寫入文件 eg. rar cw test.rar comment.txt。 

  5) d 從文檔中刪除文件 eg. rar d test.rar file1.txt e 

  將文件解壓到當前目錄 eg. rar。 

  6) e test.rar 注,用e解壓的話,不僅原來的file1.txt和file2.txt被解壓到當前目錄,就連dir1里面的所有文件也被解壓到當前目錄下,不能保持壓縮前的目錄結構,如果想保持壓縮前的目錄結構,用x解壓。 

  7) r 修復文檔 eg. rar r test.rar 

  當rar文件有問題時,可以嘗試用該命令進行修復(鬼知道有多少用) 。 

  8) s 轉換文檔成自解壓文檔 eg. rar s test.rar 

  會生成一個test.sfx的可執行文檔,運行它的效果就相當于rar x test.rar, 適合于向沒有rar的用戶傳輸文件。 

  9) t 檢測文檔 eg. rar t test.rar 

  檢測test.rar的完整性。 

  10) k 鎖定文檔 eg. rar k test.rar 

  鎖定文檔后,該文檔就無法進行任何更新操作了。 

.Z文件: 
命令: compress 
格式: compress 選項 文件列表 
功能: 用Lempel-ziv壓縮方法來壓縮文件或壓縮標準輸入 
選項: -r 遞歸操作,如果指定目錄變元,則壓縮該目錄及其子目錄中的所有文件。 
-c 將壓縮數據返回標準輸出,而缺省情況下為壓縮文件時將壓縮數據返回文件。 
-v 顯示每個文件夾的壓縮百分比。 
解釋: 在用compress壓縮文件時,將在原文件名之后加上擴展名.Z。如果不指定文件,則壓縮標準輸入,其結果返回標準輸出。 
實例: 目的:壓縮/mnt/lgx/a1.doc文件 
命令:#compress /mnt/lgx/a1.doc 
結果:壓縮后生成a1.doc.Z文件。 

命令: uncompress 
格式: uncompress 選項 文件列表 
功能: 解壓縮用compress 程序壓縮過的文件 
選項: -c 它將壓縮數據發往標準輸出而不是改寫舊的壓縮文件 
解釋: 如果不指定文件,則解壓縮標準輸入。缺省-c時,為解壓縮。 
實例: 目的:解壓縮/mnt/lgx/a1.doc.Z 
命令:# uncompress /mnt/lgx/a1.doc.Z 

.gz文件: 

命令: gzip 
格式: gzip 選項 文件目錄列表 
功能: 用Lempel-ziv編碼壓縮文件 
選項: -c 壓縮結果寫入標準輸出,原文件保持不變。缺省時gzip將原文件壓縮為.gz文件,并刪除原文件。 
-v 輸出處理信息。 
-d 解壓縮指定文件。 
-t 測試壓縮文件的完整性。 
解釋: 值得一提的是,gzip比compress壓縮更加有效。 
實例: 目的:壓縮/mnt/lgx/a1.doc 
命令:#gzip -v /mnt/lgx/a1.doc 
結果:產生a1.doc.gz的壓縮文件 

命令: gunzip 
格式: gunzip 選項 文件列表 
功能: 解壓縮用gzip命令(以及compress和zip命令)壓縮過的文件 
選項: -c 將輸出寫入標準輸出,原文件保持不變。缺省時,gunzip將壓縮文件變成解壓縮文件。 
-l 列出壓縮文件中的文件而不解壓縮。 
-r 遞歸解壓縮,深入目錄結構中,解壓縮命令行變元所指定目錄中的所有子目錄內的文件。 
實例: 目的:解壓縮/mnt/lgx/a1.doc.gz 
命令:#gunzip /mnt/lgx/a1.doc.gz 

.tar文件: 

命令: tar 
格式: tar 選項 文件目錄列表 
功能: 對文件目錄進行打包備份 
選項: -c 建立新的歸檔文件 
-r 向歸檔文件末尾追加文件 
-x 從歸檔文件中解出文件 
-O 將文件解開到標準輸出 
-v 處理過程中輸出相關信息 
-f 對普通文件操作 
-z 調用gzip來壓縮歸檔文件,與-x聯用時調用gzip完成解壓縮 
-Z 調用compress來壓縮歸檔文件,與-x聯用時調用compress完成解壓縮 
實例1: 目的:用tar打包一個目錄下的文件 
命令:#tar -cvf /mnt/lgx/a1.doc 
結果:產生一個以.tar為擴展名的打包文件 
實例2: 目的:用tar解開打包文件 
命令:#tar -xvf /mnt/lgx/a1.doc.tar 
附加說明:在通常情況下,tar打包與gzip(壓縮)經常聯合使用,效果更好。方法是: 
首先用tar打包,如:#tar -cvf /mnt/lgx/a1.doc (產生a1.doc.tar文件) 
然后用gzip壓縮a1.doc.tar文件,如:#gzip /mnt/lgx/a1.doc.tar (產生a1.doc.tar.gz文件) 
實例3: 目的:解壓a1.doc.tar.gz文件 
方法1: 
#gzip -dc /mnt/lgx/a1.doc.tar.gz (產生a1.doc.tar文件) 
#tar -xvf /mnt/lgx/a1.doc.tar (產生a1.doc文件) 
這兩次命令也可使用管道功能,把兩個命令合二為一: 
#gzip -dc /mnt/lgx/a1.doc.tar.gz | tar -xvf 
方法2:使用tar提供的自動調用gzip解壓縮功能 
#tar -xzvf /mnt/lgx/a1.doc.tar.gz 
經過tar打包后,也可用compress命令壓縮(注:gzip比compress壓縮更加有效),產生一個以.tar.Z的文件,在解包時,可先用 “uncompress 文件名”格式解壓,然后用“tar -xvf 文件名”解包。也可直接調用“tar -Zxvf 文件名”解包。

轉自:http://bjxuguoli.iteye.com/blog/761964

posted @ 2014-11-11 23:34 abilitytao 閱讀(652) | 評論 (0)編輯 收藏

2014年10月24日 #

Windows上轉unix目錄

pushd \\msad\root\ap\apbo\ku\USERS\weitaol\Desktop

運行命令
V:\AP\APBO\KU\USERS\weitaol\Desktop\TAP\Course\System Architecture\SOAP & REST A
ssessment\mybank>xjc -b .\src\binding.xml -d  .\src\ -p src.java.mybank.soap.generated .\src\src\xml\SOAPRequestResponse.xsd

posted @ 2014-10-24 17:28 abilitytao 閱讀(354) | 評論 (0)編輯 收藏

2014年10月15日 #

數據庫練習

計算兩日期間隔天數
values (days(current date) - days('2014-09-01'))

去出某一字符串的的一個單詞,空格為分隔符
select substr(title,1,instr(title,' ')-1) from titles

將字符串的一個空格替換為'--hello--'
select substr(title,1,locate(' ',title)-1)  || '--hello--' ||  substr(title,locate(' ',title)+1) from titles

db2生成隨機數
select case when price is null then INT(rand()*100) else price end from titles

兩日期相差多少月,64代表月。參數可以更改求出周,小時等等。
select TIMESTAMPDIFF(64,char(TIMESTAMP(CURRENT DATE) - TIMESTAMP(pubdate)) )from titles

有關db2日期操作可參考此博客。
http://www.cnblogs.com/wanghonghu/archive/2012/05/25/2518604.html

建立數據表,有generated always列
create table t1
(
c1 char(30),
c2 double,
c3 int not null generated always as identity
      (start with 100, increment by 5)
)
第一次更新用insert into t1(c1,c2,c3) values('123',34,default)
以后用 insert into t1(c1,c2) values('hi',45)

如果是generated by default
create table t1
(
c1 char(30),
c2 double,
c3 int not null generated by default as identity
(start with 100, increment by 5)
)
如果插入時只有兩個參數,就按默認的來
如果三個參數,就是插入的那個數
默認生成的第三個數可以修改,系統會有記錄,即使修改了也會從上一次的默認位置開始疊加。不會再回到100.

--select * from authors

--select au_lname, au_fname from authors where state ='CA'

--select * from publishers

--select distinct state from publishers

--select *from titles

--select * from titles where price is null

-- select case when price is null then 0 else price end from titles-- it works!!!!!!!!!!

-- 4 Functions

--select varchar_format(current date - date('2011-01-01') + date, 'DD-MM-YY') as newDate,

-- varchar_format(date,'DD-MM-YY') as olddate from sales

--values current date - date('2014-01-01') + date('2014-01-02')

--select *from roysched

--select hex(lorange) from roysched

--select * from titles where price in (20,19) -- in one shot ZANZANZANZANZAN!!!

select case type when 'business' then Title else 'other' end from titles 聯系條件語句并顯示成不同的屬性

-----------------------------------------------------------------------------------------------

--select * from authors

--select au_lname, au_fname from authors where state ='CA'

--select * from publishers

--select distinct state from publishers

--select *from titles

--select * from titles where price is null

-- select case when price is null then 0 else price end from titles-- it works!!!!!!!!!!

-- 4 Functions

--select varchar_format(current date - date('2011-01-01') + date, 'DD-MM-YY') as newDate,

-- varchar_format(date,'DD-MM-YY') as olddate from sales

--values current date - date('2014-01-01') + date('2014-01-02')

--select *from roysched

--select hex(lorange) from roysched

--select * from titles where price in (20,19) -- in one shot ZANZANZANZANZAN!!!

--select case type when 'business' then Title else 'other' end from titles

--select syscolumns.length from syscolumns where syscolumns.id = 'titles' and syscolumns.name = 'title'

--5 Grouping

--select (days(max(pubdate)) - days(min(pubdate)) )/365 from titles

--select title from titles order by length(title)

--select *from titles

--select count(*) from authors group by city

--select title from titles where length(title) = (select max(length(title)) from titles)

--select coalesce(price,0) from titles -- yuan lai bushi yong is null shi yong zhe ge a!!!!

--select length(price) from titles

/*

select title from titles where length(title) >= all

(

select length(title) from titles

)

*/

--select pubdate from titles

/*

select title,pubdate from titles where pubdate >= all

(

select pubdate from titles

)

*/

--select count(*) from sales group by stor_num

--select * from sales

--select * from publishers

--select * from titles as a inner join publishers as b on a.pub_id = b.pub_id

--select title,city,a.pub_id from titles as a inner join publishers as b on a.pub_id = b.pub_id where city not in ('Boston')

--select * from psales

/*

select b.ord_num,b.discount,d.discounttype from psales as a inner join salesdetail as b on a.stor_id = b. stor_id and a.ord_num = b.ord_num

inner join stores as c on a.stor_id = c.stor_id inner join discounts as d on c.stor_id = d.stor_id order by b.ord_num

*/

--select * from authors

--select * from publishers

--select * from authors as a inner join publishers as b on a.city = b.city

--select sum(qty) from salesdetail

--select pub_name, count(distinct type) from publishers as a inner join titles as b on a.pub_id = b.pub_id group by pub_name

--select *from titleauthor

--7 Sub-Queries

/*

select pub_name from publishers where pub_id in

(

select pub_id from titles

)

*/

--select * from publishers

--nice !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

/*

select type,title,t1.price

from titles as t1

where price > (select avg(price) from titles as t2 where t2.type = t1.type)

*/

-- nice !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

 

select title,t1.price

from titles as t1

where price > all(select coalesce(price,0) from titles as t2 where t2.type != t1.type)

 

--select * from titles

--select t1.type,t1.title,t1.price,(select avg(price) from titles as t2 where t2.type = t1.type)

--from titles as t1

--where price > (select avg(price) from titles as t2 where t2.type = t1.type)

 

--select avg(price) from titles

--select abs(13.93750000000000000000000000- price) from titles

--select coalesce(abs((select avg(price) from titles) - price),0) from titles


--select count(*) as ANS from SB_AUCTION where (days(enddate) - days(startdate) < 10)

/*

select description, enddate, reserve from SB_Auction inner join sb_item on SB_Auction.itemid = sb_item.itemid

where (date('2011-02-20') >= startdate and date('2011-02-20') <= enddate) order by reserve desc

*/

 

--select * from sb_bid

--select name from (sb_bid as a inner join sb_auction as b on a.bidder = b.userid) inner join sb_user as c on b.userid = c.userid group by name

--select * from authors

--select newA.name from

--(

--select name,c.itemid from (sb_user as a inner join sb_auction as b on a.userid = b.userid)

-- inner join sb_item as c on b.itemid = c.itemid

--) AS newA

--select * from sb_auction

/*

create view weitaol_view

as

select c.auctionid, max(amount) as winning_bid from sb_auction as a inner join sb_user as b on a.winnerid = b.userid

inner join sb_bid as c on a.auctionid = c.auctionid where a.state = 'sold' group by c.auctionid

*/

--select * from weitaol_view

 

select enddate, description,coalesce(name,'==') as name ,coalesce(c.winning_bid,0) as winning_bid

from sb_auction as a inner join sb_item as b on a.itemid = b.itemid

left join sb_user on a.winnerid = sb_user.userid

left join weitaol_view as c on a.auctionid = c.auctionid

/*

select * from sb_auction

*/




posted @ 2014-10-15 23:39 abilitytao 閱讀(466) | 評論 (0)編輯 收藏

2014年10月4日 #

Scala數組操作

scala中的數組比java的數組強大很多   
    1、定長數組:長度不變的數組Array,如:聲明一個長度為10的整形數組,val arr = Array[Int](10);聲明并初始化一個字符串數組: val arrStr = Array(“wo”,”cha”,”yo”)。訪問數組方式:訪問arrStr第一個元素,arrStr(1)即可
    2、變長數組(即數組緩沖):java中有ArrayList和scala中的ArrayBuffer等效;但是ArrayBuffer更加強大,通過下面的事列來熟悉ArrayBuffer:
import collection.mutable.ArrayBuffer
    val arrbuff1 = ArrayBuffer[Int]()
    val arrBuff2 = ArrayBuffer(1,3,4,-1,-4)
    arrbuff1 += 23    //用+=在尾端添加元素
    arrbuff1 += (2,3,4,32) //同時在尾端添加多個元素
    arrbuff1 ++= arrBuff2 //可以用 ++=操作符追加任何集合
    arrbuff1 ++= Array(2,43,88,66)
    arrbuff1.trimEnd(2) //移除最后的2個元素
    arrbuff1.remove(2)  //移除arr(2+1)個元素
    arrbuff1.remove(2,4) //從第三個元素開始移除4個元素
    val arr = arrbuff1.toArray //將數組緩沖轉換為Array
    val arrbuff2 = arr.toBuffer //將Array轉換為數組緩沖
    3、遍歷數組和數組緩沖:在java中數組和數組列表/向量上語法有些不同。scala則更加統一,通常情況,我們可以用相同的代碼處理這兩種數據結構,for(…) yield 循環創建一個類型和原集合類型相同的新集合。for循環中還可以帶守衛:在for中用if來實現。
    for(i <- 0 until arrbuff1.length) yield arrbuff1(i) * 2 //將得到ArrayBuffer(2,6,4,-2,-4)
    for(i <- 0 until (arrbuff1.length,2)) yield arrbuff1(i) * 2 //將得到ArrayBuffer(12,-4)
    for(elem <-0 arrbuff1) print(elem) //如果不需要使用下標,用這種方式最簡單了
    for(i <- arrbuff1 if arrbuff1 > 0) print i //打印出arrbuff1中為整數的值
    arrbuff1.filter( _ > 0).map{ 2 * _} //生成arrbuff1中的正數的兩倍的新集合
    arrbuff1.filter {_ > 0} map {2 * _} //另一種寫法
    4、常用算法:scala有很多便捷內建函數,如
    arrbuff1.sum //對arrbuff1元素求和
    Array("asd","sdf","ss").max //求最大元素
    arrbuff1.sorted(_ < _)  //將arrbuff1元素從小到大排序
    arrbuff1.sorted(_ > _)  //從大到小排序
    util.Sorting.quickSort(Array) //針對數組排序,單不能對數組緩沖排序
    val arr = Array(1,23,4,2,45)
    arr.mkString(",") //指定分割符
    arr.mkString("(",",",")") //指定前綴、分隔符、后綴
更多函數參見Scaladoc
    5、多維數組:
val matrix = Array.ofDim[Int](5,4) //三行四列的二維數組
matrix(2)(3) //訪問第二行、第三個元素
    6、scala數組和java互操作:由于scala數組是用java數組實現的,所以可以在java和scala之間來回傳遞,引入scala.collectin.JavaConversion ,可以在代碼中使用scala緩沖,在調用java方法時,這些對象會被自動包裝成java列表。反過來講,引入scala.collection.asScalaBuffer時,當java方法返回java.util.List時,我們可以讓它轉換成一個Buffer

轉自:http://www.kankanews.com/ICkengine/archives/128572.shtml

posted @ 2014-10-04 11:52 abilitytao 閱讀(32095) | 評論 (3)編輯 收藏

2014年9月29日 #

C++ 泛型編程練習 Adaptor Functor & Helper Function

#include<iostream>
using namespace std;

template <class OutputIterator, class Iterator, class predicate>
    void copy(OutputIterator o, Iterator f, Iterator l, predicate p)
    {
        while(f!=l)
        {
            if(p(*f))
            {
                *o = *f;
                ++f;
                ++o;
            }
            else
            {
                ++f;
            }
        }

    }
template <class Predicate>
class negate
{
    Predicate p;
public :
    typedef typename Predicate::value_type value_type;
    negate(const Predicate &pred):p(pred){}
    bool operator()(const value_type v)const
    {
        return !p(v);
    }
};

template<class Number>
struct smallerThanX
{
    typedef Number value_type;
    int x;
    smallerThanX(int x):x(x)
    {

    }

    bool operator()(const Number& n) const
    {
        return n< this->x;
    }
};

template <class Predicate>
inline negate<Predicate > NOT (const Predicate &p)
{
    return negate<Predicate>(p);
}


int main()
{
    int a[] = {1,2,3,4,5,6,7,8};
    int *b = new int [10]; 
    copy(b,a,a+8,NOT(smallerThanX<int>(5)));
    return 0;
}

這種方式實在是有點難看啊。。。 代碼不仔細看還看不懂,不知道為什么要這樣寫呢。。。

posted @ 2014-09-29 23:50 abilitytao 閱讀(523) | 評論 (0)編輯 收藏

2014年9月22日 #

C# Dictionary容器練習

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

class MagicDictionary
{

    private Dictionary<String, String> dic;

    public MagicDictionary()
    {
        dic = new Dictionary<stringstring>();

    }

    void Add(String key, String value)
    {
        if (dic.ContainsKey(key)&&dic[key]==value)
            throw new Exception("KeyValuePair already exsits");
        dic.Add(key, value);
    }

    void Remove(String key)
    {
        if (!dic.ContainsKey(key))
            throw new Exception("it doesn't exsit");
        dic.Remove(key);
    }

    void Set(String key, String value)
    {
        if (dic.ContainsKey(key))
            dic[key] = value;
        else
            dic.Add(key, value);
    }

    String Get(String key)
    {
        return dic[key];
    }

    void PrintAll()
    {
        foreach (KeyValuePair<String, String> i in dic)
        {
            Console.WriteLine(i.Key + " " + i.Value);
        }
    }

    String TryGetValue(String key)
    {
        if (dic.ContainsKey(key))
            return dic[key];
        else
            return "";
    }

    public String this[String key]
    {
        set
        {
            dic[key] = value;
        }
        get
        {
            return dic[key];
        }
    }

    public static void Main()
    {

        try
        {
            MagicDictionary t = new MagicDictionary();
            t.Add("Hi", "Hello");
          //  t.Add("Hi", "Hello");
            t.Add("What", "ever");
            t.Add("Pretty", "Girl");
            t.Add("Apple", "Google");
            t.PrintAll();
            t.Remove("Pretty");
            t.Remove("#$@#*$");
            t.Set("What", "Whatever");
            if (t.TryGetValue("Hi") != "")
                Console.WriteLine("OK");
            else
                Console.WriteLine("Bu OK");

            if (t.TryGetValue("Appoe") != "")
                Console.WriteLine("OK");
            else
                Console.WriteLine("Bu OK");
            Console.WriteLine(t.Get("Apple"));
            t["Apple"] = "BIG GOOGLE";

            t.PrintAll();
        }
        catch (System.Exception ex)
        {
            Console.WriteLine(ex.Message);
            Console.WriteLine(ex.Message);
        }

    }

}

posted @ 2014-09-22 19:06 abilitytao 閱讀(441) | 評論 (0)編輯 收藏

2014年9月21日 #

C# 猜數字小游戲(IDisposable接口練習)

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

class iTimer:IDisposable
{
    String mes;
    DateTime s;
    public iTimer(String mes)
    {
        this.mes = mes;
        s = DateTime.Now;
    }

    public void Dispose()
    {

        DateTime t = DateTime.Now;
        TimeSpan ts = t - s;
        Console.Error.WriteLine("spent time(in Milliseconds):");
        Console.Error.WriteLine(ts.TotalMilliseconds);

    }

    public static void Main()
    {

        using (iTimer t = new iTimer("game"))
        {
            int ans = 10;
            int input = Int32.Parse(Console.ReadLine());

            while(ans!=input)
            {
                Console.WriteLine("please try again.");
                input = Int32.Parse(Console.ReadLine());
            }
            Console.WriteLine("Correct!");
                
        }

        Console.Error.WriteLine("the program is terminated");
        

    }


}

posted @ 2014-09-21 12:26 abilitytao 閱讀(569) | 評論 (0)編輯 收藏

僅列出標題  下一頁
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            午夜精品免费在线| 欧美成人中文字幕| 夜夜夜久久久| 欧美精品一区二区蜜臀亚洲| 亚洲精品女av网站| 亚洲激情欧美| 欧美激情中文字幕一区二区| 老巨人导航500精品| 亚洲精品乱码久久久久久久久| 欧美丰满少妇xxxbbb| 嫩草国产精品入口| 一区二区三区日韩在线观看| 欧美aa国产视频| 免费久久99精品国产自在现线| 亚洲国产精品嫩草影院| 亚洲国产精品久久久久婷婷884| 美国成人毛片| 中国成人在线视频| 亚洲欧美综合精品久久成人| 在线观看日韩精品| 亚洲精品午夜| 国产欧美精品一区二区三区介绍| 亚洲视频999| 午夜视频一区二区| 亚洲精品视频一区| 亚洲制服少妇| 亚洲激情午夜| 在线亚洲精品| 在线精品在线| 中日韩在线视频| 一区三区视频| 久久精品国产999大香线蕉| 日韩一级不卡| 一区二区电影免费观看| 国产一区二区久久久| 亚洲国产另类 国产精品国产免费| 欧美激情视频免费观看| 久久黄色影院| 欧美激情一区在线| 久久久久一区二区三区| 欧美一区综合| 久久蜜桃av一区精品变态类天堂| 亚洲图片欧洲图片日韩av| 久久av资源网| 午夜精品久久久久99热蜜桃导演| 蜜桃久久av一区| 欧美主播一区二区三区| 欧美日韩高清在线播放| 欧美xart系列高清| 欧美激情国产日韩| 久久久91精品| 欧美视频精品在线观看| 久久久久久亚洲精品杨幂换脸 | 亚洲一区二区三区在线| 久久青青草原一区二区| 欧美一区二区三区四区在线观看| 久久视频在线视频| 久久人人精品| 亚洲一级在线观看| 亚洲精品欧洲| 老司机精品视频网站| 久久av一区二区三区亚洲| 欧美午夜a级限制福利片| 欧美成人一区二区在线 | 久久免费视频网| 久久九九全国免费精品观看| 国产精品视频久久久| 一本久久综合| 亚洲一区二区在线免费观看| 欧美日韩一区二区欧美激情| 亚洲黄一区二区三区| 亚洲国内在线| 欧美韩日视频| 亚洲欧洲精品一区二区三区不卡 | 亚洲欧洲在线视频| 免费观看不卡av| 亚洲福利国产| 亚洲国产精品成人综合色在线婷婷| 欧美在线观看你懂的| 久久这里只有| 亚洲国产精品成人一区二区| 欧美freesex8一10精品| 亚洲丁香婷深爱综合| 一区二区三区免费观看| 国产精品久久久久久久第一福利| 亚洲免费视频一区二区| 久久精品国产91精品亚洲| 国产日韩在线视频| 久久久综合网站| 欧美成年视频| 日韩亚洲精品在线| 国产一区二区三区在线观看网站 | 91久久久久久国产精品| 中文在线一区| 国产伦精品一区二区三区在线观看 | 亚洲手机视频| 国产精品一区二区三区观看| 欧美制服丝袜| 亚洲电影有码| 亚洲欧美日韩精品一区二区 | 久久―日本道色综合久久| 亚洲国产婷婷香蕉久久久久久| 亚洲无线观看| 国产在线观看一区| 欧美日韩高清在线一区| 欧美一区午夜精品| 99综合精品| 麻豆freexxxx性91精品| 中文日韩在线| 免费观看不卡av| 亚洲一级黄色片| 欧美gay视频| 亚洲欧美精品伊人久久| 伊人久久大香线| 国产精品二区二区三区| 免费成人av| 亚洲免费影视| 亚洲另类在线一区| 麻豆九一精品爱看视频在线观看免费 | 亚洲制服丝袜在线| 亚洲黄页视频免费观看| 另类春色校园亚洲| 午夜一区不卡| 一本色道综合亚洲| 在线日本高清免费不卡| 国产伦理一区| 国产精品成人免费精品自在线观看 | 亚洲自拍偷拍网址| 亚洲免费久久| 在线看成人片| 国产一区二区丝袜高跟鞋图片| 欧美午夜宅男影院| 欧美国产日韩a欧美在线观看| 久久久精品日韩| 亚洲欧美99| 亚洲午夜伦理| 亚洲最新视频在线| 日韩视频免费看| 亚洲国产日韩一区二区| 蜜桃av综合| 久久亚洲综合色| 久久久人成影片一区二区三区观看 | 国产精品一区二区久久国产| 国产精品www| 国产精品啊啊啊| 欧美三级小说| 欧美性猛交99久久久久99按摩| 欧美黄色成人网| 欧美激情a∨在线视频播放| 久久婷婷久久一区二区三区| 久久精品一区蜜桃臀影院 | 亚洲国产一区二区三区在线播| 欧美激情第二页| 欧美黄色网络| 亚洲国产毛片完整版| 亚洲人成绝费网站色www| 亚洲国产日韩一级| aa成人免费视频| 亚洲一区二区三区涩| 亚洲专区在线视频| 欧美影视一区| 久久久亚洲精品一区二区三区 | av成人天堂| 午夜欧美视频| 久久九九国产精品怡红院| 久热精品视频在线观看一区| 欧美成人精品h版在线观看| 欧美激情小视频| 欧美视频一区二区| 国产日韩精品视频一区二区三区| 国产一区999| 亚洲国产精品久久久久久女王 | 欧美日韩中文字幕| 久久夜色精品国产欧美乱极品| 久久综合久久综合九色| 欧美成人dvd在线视频| 亚洲精品日韩精品| 亚洲欧美激情精品一区二区| 久久久91精品国产一区二区精品| 久久一区欧美| 欧美午夜精品伦理| 精品动漫3d一区二区三区| 亚洲久久成人| 久久精品国产亚洲一区二区三区 | 亚洲欧美日韩国产另类专区| 久久一区二区三区国产精品| 最新国产精品拍自在线播放| 亚洲欧美激情诱惑| 欧美不卡在线| 国产美女搞久久| 日韩视频免费看| 久久久久久久久伊人| 亚洲日本理论电影| 欧美在线免费观看视频| 欧美日韩国产一中文字不卡| 国产专区综合网| 亚洲午夜久久久久久久久电影院 | 99re66热这里只有精品4| 久久精品国产清高在天天线| 亚洲免费av片|