今天給你們分享一下,如何將DataTable轉爲List和Array,爲此小U也花了很多時間研究,最後發現沒有那麼複雜。數組
先來講說List和Array的區別:3d
List:就像一個鏈條,存儲數據的空間能夠不連續。blog
Array:就像一個Execl中的某一列,可是它必須在聲明的時候就指定存儲空間的大小,換句換話就是聲明的時候須要初始化數據的大小。字符串
那何時用Array,何時用List呢?string
總結1:當咱們不肯定大小時,最好使用List代替Arrayit
總結2:當須要大量的查找操做時,最好使用Array,誰用誰知道。io
總結3:當須要進行頻繁的插入,刪除操做時,最好使用List代替Array原理
最後:因爲List須要存儲他下一個節點的地址,因此浪費更多的空間 List
下面小U將給你們講解一下如何轉換,本例中使用的Activity有:方法
整個流程看起很長,實際的原理很簡單,請小夥伴耐心看完
(一) 咱們來看看如何輸出DataTable,這個其實很簡單,直接新建一個OutputDataTable的activity就能夠了
因爲個人表格裏面沒有標題行,因此要去掉標題
看到了吧,就是這麼簡單,只須要記住他是將整個DataTable裏面的內容做爲一個字符串輸出。
(二)如何將DataTable轉換成List呢?
開始這個問題一直都不知道,總想着用ForEachRow讀取,而後直接賦值,結果怎麼都不行,好在發現了方法,經過Invoke Method中的Add能夠實現,注意定義的List的類型是List<String>,而且在Default中須要這樣處理new List(of string)
---------------------------更新內容-----------------------------
在使用Invoke Method的時候,咱們須要進行參數設定,以下圖
漏掉了參數說明,不少同窗都卡在這裏的,今天把這個追加進去
打印就很簡單了,直接使用ForEach,注意不是ForEachRow
(三)如何將List轉換爲數組,這個其實也很是簡單
只須要這一步便可,array的類型是String[]
最後,咱們來看看輸出結果