原创 Object-c 實現迷宮

關於本例子中用到的棧結構請參看:https://blog.csdn.net/d06110902002/article/details/106039828 迷宮分析: 迷宮通常是用一個二維數組來表示,通路以0表示,不通以1表

原创 Object-c 實現一個棧

棧釋義 棧是一種線性數據結構,存儲以及查找數據時只能訪問棧的一端。類似於餐廳的盤子,新盤子放到這一疊盤子最上面,取的時候也是從最上面開始。最後放的盤子的也是最先被取走的那個。因此棧稱爲後進先出(Last in First O

原创 object-c 隊列的兩種實現方式(數組+鏈表)

隊列是一個簡單的等待序列,入隊(新添加)的元素放在尾部,出隊(刪除的元素)從第一個開始。隊列是先進先出結構(First In First out) 構造一個隊列通常需要包含以下幾個接口 初始化,這個過程用來設定隊列的大小。

原创 《深入理解Java虛擬機 JVM高級特性與最佳實踐》讀書筆記--JAVA自旋鎖與自適應自旋鎖

自旋鎖釋義: 請求鎖的線程(假設爲線程A)再未獲得鎖的時候,不進入阻塞狀態,而是讓它「再執行一會」即佔用CPU一會,看看持有鎖的線程是否很快釋放鎖資源。但是爲了讓這個線程A進入「等待」的狀態,需要讓它執行一個忙循環(自旋),

原创 Object-c單鏈表的操作

如果一個節點指向另一個節點的指針作爲數據成員,那麼多個這樣的結點可以連接起來用一個變量能夠訪問整個節點序列。這樣的節點序列就是最常用的鏈表實現方法。鏈表是一種由節點組成的數據結構,每一個節點都包含某些信息及指向鏈表中的另一個結

原创 Java 多線程Latch模式-對比IOS 的線程依賴

Latch 模式背景釋義: 有A、B、C、D若干個並行任務,現在F任務需要等ABCD全部完成之後再進行,只要其中任一一個併發任務未執行完F任務就阻塞或者拋出超時異常、取消任務 代碼翻譯: 抽象任務接口約束類 pub

原创 IOS-使用UICollectionView+UIScrollView實現懸停、導航條跟隨列表滾動滑動

本例子主要實現2個主要功能 懸停 UIScrollView 的中Item隨着滾動列表聯動變化 效果圖: 懸停的變化通過 監聽UIConllectionView ContentSet變化再改變待懸停視圖和y座標

原创 Java Balking模式

原文案例來自於《java 高併發編程詳解》 Balking 模式釋義 比如我們在用word 編寫文檔的時候,每次文字編輯都代表着文檔的狀態發生了改變,除了我們手動使用ctrl+s保存文檔以外,word還可以設置自動保存。如果wo

原创 Java 自定義Future模式

Future 模式釋義 來源於《Java 高併發編程詳解》 假設有個任務需要執行比較長的時間,通常需要等待任務執行結束或者出錯 才能返回結果,在些期間調用者只能陷入阻塞苦苦等待,對此Future設計模式提供了一種憑據式的解決

原创 java Balking模式(猶豫模式)

#原文案例來自於《java 高併發編程詳解》 Balking 模式釋義 比如我們在用word 編寫文檔的時候,每次文字編輯都代表着文檔的狀態發生了改變,除了我們手動使用ctrl+s保存文檔以外,word還可以設置自動保存。如果w

原创 IOS控件列---仿Android的Toast提示信息

本案例設計思路沒什麼難的地方,只要掌握了CAShapeLayer + UIBezierPath 效果圖如下: 與基本動畫 的使用,設計出來完

原创 IOS仿最新版愛奇異loading動畫

愛奇異更新版本之後,那個loading效果比較簡潔,卻又不失美觀,遂仿製一把,以供廣大程序員交流學習,效果圖如下, 效果圖中是垂直效果,但只要在路徑那裏改一下即可,還有一個縮放動畫未添加,留給看官們自己處理 動畫分析: 圓弧動畫:UI

原创 IOS控件系列----使用UITableView實現網格佈局,自定義顯示列數

先放一引效果圖: 在IOS中達到類似Android中的GridLayout 通常是使用UIConlectionView,這個組件是平果公司已經封裝好的,直接實現相應的接口即可。不知道各位道友是否也曾想過用UItableView來擼一

原创 IOS CALayer實現圓點繞圓周運動--CAKeyframeAnimation的使用

效果圖如下: android的做法是,擴展一個View然後畫一個圓點,再通過一個動畫來不改變這個圓點的座標即可。 IOS的做法一:展示這個小圓點方法同android,但是圓點的座標變換通過定時器,代碼如下: -(void) play

原创 ios + Android 底部拖拉菜單

這個簡易 的底部拖拉菜單沒什麼工作量,這裏氷分析了,直接上代碼,距離屬性沒剝離出來,不過很簡單,各位大神用到的時候,自己擴展吧   代碼如下:   @interface ViewController () @property(non