Flutter循序漸進==>數據結構(列表、映射和集合)和錯誤處理

導言

填鴨似的教育確實不行,我高中時學過集合,不知道有什么用,毫無興趣,等到我學了一門編程語言后,才發現集合真的很有用;可以去重,可以看你有我沒有的,可以看我有你沒有的;列表是我最喜歡的數據結構,我最喜歡把列表和元組結合起來用,比如[(張飛,劉備集團),(賈詡,曹操集團)]。映射,也就是Python里面的字典,也是我的最愛之一!讓學習變得有趣起來,就用三國混戰來舉例吧!

列表映射和集合出場

錯誤處理

//叫一個沒來的將領,會發生什么?
try{String myGengeral = generalInfo['馬超'];
}catch(e){print('出錯:$e');
}

出錯:type 'Null' is not a subtype of type 'String'

代碼

void main(){print('***************************列表**********************************');List<String> generals = ['趙云','呂布','典韋','夏侯惇','趙云'];String liubeiGroup = generals[0];print('劉備集團將領有:$liubeiGroup');//典韋要保護曹操的,換曹仁出場generals[2] = '曹仁';print('曹操換人后,出場混戰的將領有:$generals');//孫權說:“你們又不帶我玩?我要派甘寧來參加!”generals.add('甘寧');print('孫權加人后,出場混戰的將領有:$generals');//曹操說:“像呂布這種小人,不要讓他入場,必須德才兼備才有資格入場!”generals.remove('呂布');print('移除人品差的后,出場混戰的將領有:$generals');//組委會主席漢獻帝說:“讓我統計下參賽選手數量,聽我念名單依次入場!”print('漢獻帝宣布:總決賽出場混戰的將領總共有:${generals.length}位!');for (String general in generals){print('請入場:$general!');}print('***************************映射**********************************');Map<String,dynamic> generalInfo = {'名字':'趙云','公司':'劉備集團','性別':'男',};print('性別有點多余');generalInfo.remove('性別');print(generalInfo);print('第一個出場的是${generalInfo['名字']}');//自我介紹了說了名字么?print('${generalInfo.containsKey('名字')}');List<String> keys = generalInfo.keys.toList();print(keys);List<dynamic> values = generalInfo.values.toList();print(values);generalInfo.forEach((key,value){print('$key:$value');});print('***************************集合**********************************');Set<String> newGenerals = {'劉備','張飛','關羽','關羽'};print(newGenerals);//上面那個列表里面,趙云報了兩次名,這是不行的List<String> uniGenerals = generals.toSet().toList();print(uniGenerals);}

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/38718.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/38718.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/38718.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

毫米波雷達深度學習技術-1.7訓練一個神經網絡

1.7 訓練一個神經網絡 對于訓練神經網絡&#xff0c;有兩個步驟&#xff0c;即前向傳遞和誤差反向傳播。 1.7.1 前向傳播和反向傳播 在前向傳遞中&#xff0c;輸入被饋送到模型并與權重向量相乘&#xff0c;并為每一層添加偏差以計算模型的輸出。密集層或全連接層第l層的輸入、…

SQL面試題練習 —— 查詢前2大和前2小用戶并有序拼接

目錄 1 題目2 建表語句3 題解 1 題目 有用戶賬戶表&#xff0c;包含年份&#xff0c;用戶id和值,請按照年份分組&#xff0c;取出值前兩小和前兩大對應的用戶id&#xff0c;需要保持值最小和最大的用戶id排首位。 樣例數據 ------------------------- | year | user_id | v…

網絡基礎-RIP協議

RIP&#xff08;Routing Information Protocol&#xff09;是一個基于距離矢量的動態路由協議&#xff0c;常用于小型到中型網絡。RIP是較早的路由協議之一&#xff0c;具有簡單易用的特點。以下是關于RIP協議的詳細介紹&#xff1a; RIP的主要特點 ①使用跳數&#xff08;ho…

非標設備行業的數智化項目管理

近年來&#xff0c;中國制造快速發展&#xff0c;企業迫切需要加快轉型升級。與傳統制造業相比&#xff0c;高端制造業具有明顯的優勢&#xff1a;高技術、高附加值、低污染、低排放、競爭優勢強。一方面&#xff0c;企業對于生產效率和自動化水平的要求不斷提高&#xff0c;期…

開發個人OpenUI--1 項目介紹

開發個人OpenUI--1 項目介紹 開發個人OpenUI--1 項目介紹知識點大綱文章目錄項目地址 開發個人OpenUI–1 項目介紹 本文將以一個使用Ollama部署的ChatGPT為背景&#xff0c;主要還是介紹和學習使用 go-zero 框架&#xff0c;開發個人OpenUI的服務器后端&#xff0c;使用Docker…

武漢星起航:成功掛牌上股交,領航亞馬遜跨境電商,共創未來輝煌

在全球電商的競爭格局中&#xff0c;亞馬遜憑借其卓越的服務、豐富的商品種類和高效的物流體系&#xff0c;始終穩坐全球電商市場的頭把交椅。而在這股不可阻擋的電商浪潮中&#xff0c;武漢星起航電子商務有限公司憑借其前瞻性的戰略布局和強大的運營能力&#xff0c;成功在20…

名企面試必問30題(十二)——簡單介紹一下你的家庭情況

1.思路 對于面試官來說&#xff0c;他提出這個問題&#xff0c;只是為了深挖您的性格、穩定性、行事風格&#xff0c;包括未來定居規劃、生育規劃等基礎信息&#xff0c;這是正常情況。您不要過多圍繞其他家庭成員來講&#xff0c;否則面試官無法獲取他想要的&#xff0c;您也難…

【單片機畢業設計選題24040】-基于STM32的藍牙防丟器設計

系統功能: 系統上電后顯示“歡迎使用藍牙防丟系統請稍后”兩秒鐘顯示正常界面&#xff0c;如果藍牙正常連接OLED顯示Connected, 藍牙未連接則顯示DisConnected同時蜂鳴器報警 藍牙正常連接后在APP上每隔三秒顯示一個Connected 系統功能框圖: 主要功能模塊原理圖: 電源時鐘…

大數據之Zookeeper部署

文章目錄 集群規劃環境準備集群部署參考資料 集群規劃 確定使用Hadoop101、hadoop102和hadoop103三臺服務器來構建Zookeeper集群。 hadoop101hadoop102hadoop103zookeeperzookeeperzookeeper 環境準備 安裝zookeeper前需要確保下面的環境配置成功&#xff0c;具體可以參考大…

AI智能剪輯發展到哪種地步?來看看云微客就知道了!

不是短視頻團隊招不起&#xff0c;而是矩陣賬號更有性價比。企業做短視頻有反思過為什么干不過同行嗎&#xff1f;我們來看看大佬是怎么做的。云微客AI智能剪輯系統用幾百個賬號做矩陣布局&#xff0c;系統每天自動進行批量剪視頻、寫文案、一鍵自動化發布視頻&#xff0c;一個…

[漏洞復現] MetInfo5.0.4文件包含漏洞

[漏洞復現] MetInfo5.0.4文件包含漏洞 MetInfo5.0.4 漏洞代碼審計 漏洞出現在about/index.php中&#xff0c;因為利用了動態地址&#xff0c;所以存在漏洞。 漏洞檢查語句&#xff08;&#xff01;192.168.109.100是我的服務器ip&#xff0c;需要換成自己的&#xff09;&…

華為倉頡語言體驗:一個簡單的socket服務端實現

前言 由于倉頡目前是內測狀態&#xff0c; 不能展示倉頡的詳細信息&#xff0c;但是華為倉頡官網的公共文檔的內容是可以公開的。 我相信有不少喜歡編程的朋友都申請了內測&#xff0c;但是一些編程初學者應該和我一樣&#xff0c;處于摸索階段。所以&#xff0c;我這里把我測…

排序題目:多數元素 II

文章目錄 題目標題和出處難度題目描述要求示例數據范圍進階 前言解法一思路和算法代碼復雜度分析 解法二思路和算法代碼復雜度分析 解法三思路和算法代碼復雜度分析 題目 標題和出處 標題&#xff1a;多數元素 II 出處&#xff1a;229. 多數元素 II 難度 3 級 題目描述 …

css高度0到高度auto,過渡的設置

1.css從高度0到高度auto,過渡設置 方法(vue代碼) 你可以通過設置transform: scale(0);到 transform: scale(1); 來實現,具體代碼 你也可以通過設置transform: scaleY(0);到 transform: scaleY(1); 這兩種展示的效果不一樣,你可以看看你喜歡那種 // css代碼// 原來的css類 .s…

港口危險貨物安全管理人員考試題庫(含答案)

一、單選題 1.化學品安全標簽內容中警示詞有( )種分別進行危害程度的警示。 A、3 B、4 C、5 參考答案:A 2.運輸放射性物品&#xff0c;應當使用( )的放射性物品運輸包裝容器(以下簡稱運輸容器)。 A、專業 B、專用 C、統一 D、定制 參考答案:B 3.庫區儀表及計算機監控管理系…

中電金信:金Gien樂道 | 6月熱門新聞盤點 回顧這一月的焦點事件

“以檢之力 e企守護”——上海市檢一分院與中電金信開展聯學聯建 6月24日&#xff0c;上海市人民檢察院第一分院與中電金信數字科技集團股份有限公司聯合開展“以檢之力 e企守護”聯學聯建活動。雙方共同參觀了全國檢察機關證券期貨犯罪辦案基地和重大職務犯罪案件辦理&#xf…

HTML5與3D打印:探索網頁內容的物理化可能

隨著科技的飛速發展&#xff0c;互聯網與物理世界的交匯點日益增多。HTML5作為當前網頁開發的主流標準&#xff0c;不僅推動了網頁內容的豐富性和互動性&#xff0c;還在與3D打印技術的結合中&#xff0c;展現出了將網頁內容物理化的巨大潛力。本文將探討HTML5與3D打印的結合點…

C++ 中的數據類型

C規定在創建一個變量或者常量時&#xff0c;必須要指定出相應的數據類型&#xff0c;否則無法給變量分配內存. 1 整型 作用&#xff1a;整型變量表示的是整數類型的數據 C中能夠表示整型的類型有以下幾種方式&#xff0c;區別在于所占內存空間不同&#xff1a; 數據類型占用…

python(6)numpy的使用詳細講解

在numpy中&#xff0c;最基本的數據結構是數組&#xff0c;因此我們首先需要了解如何創建一個數組。numpy提供了多種數組創建方法&#xff0c;包括從列表或元組創建、從文件中讀取數據、使用特定函數創建等。下面是一些常用的創建方法&#xff1a; 一、創建數組 1. 從列表或元…

【MySQL備份】Percona XtraBackup基礎篇

目錄 1.關于Percona XtraBackup 2. Percona XtraBackup有哪些特點&#xff1f; 3.安裝Percona XtraBackup 3.1.環境信息 3.2.安裝步驟 4. xtrabackup內部流程圖 5.Percona XtraBackup基礎語法 5.1.全量備份 5.2.增量備份 5.2.1.基于全量備份的增量備份 5.2.2.基于前…