Explicit和Implicit 的Dto轉換

2022-01-14 06:21:06 字數 1025 閱讀 8319

剛好專案中也是經常用到 model和dto做轉換,應該有很多同學都會遇到這種**。

比如:這樣乙個model

對應這樣乙個dto:

有新同學可能會問model和dto不是基本一樣麼,為啥還要重複建,這個我個人理解就是 model負責對內,dto對外,dto屬性不一定和model

一致,但是會包含model的全部屬性,這裡多說了一點。

既然我們把物件分為了兩個,那麼這兩個肯定會存在相互轉換,我們所要說的就在這裡。

我們先看看我們之前所用的轉換:

我們會在dto中建兩個方法分別是 frommodel:負責model轉dto,tomodel負責dto轉model

我這裡建了幾個類如下:

當我們轉換的時候:

當然還可以做一些其他的轉換,比如就只是類中屬性型別的轉換等等。

該關鍵字只能在類內部使用

用implicit和explicit打通兩種型別

我們知道,在c 中,如果兩個型別沒有繼承關係 是不能相互值賦的,但有兩個關鍵字implicit和explicit,可以讓 date date datetime.now這樣的賦值成為可能。注 c 是沒有date型別的,但datetime有date屬性 datetime.date,但這個屬性本質上是個d...

scala學習筆記2 隱式轉換implicit

一 scala隱式轉換 乙個類例項a,有a方法而沒有b方法,需要將a轉換為提供b方法的類,稱為隱式轉換 class richfile val file file object context object helloimplicit 隱式轉換在spark rdd的應用 rddtopairrddfun...

不忘本 explicit和implicit修飾符

返回目錄 部分內容來自msdn implicit關鍵字用於宣告隱式的使用者定義型別轉換運算子。如果轉換過程可以確保不會造成資料丟失,則可使用該關鍵字在使用者定義型別和其他型別之間進行隱式轉換。1 class digit23 67public double val 89 1011 1213 user ...