Guest User

Untitled

a guest
Nov 18th, 2017
79
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.64 KB | None | 0 0
  1. ## 概要
  2. |関数名|渡し方|参照|戻り値|例(val str = "hoge")|
  3. |-|-|-|-|-|
  4. |apply|関数|this|this|val strApply = str?.apply{ println( toUpperCase()) }|
  5. |run|関数|this|結果の値|val upperStr = str?.run{ toUppserCase() }|
  6. |let|関数|it|結果の値|val upperStr = str?.let{ **it**.toUppserCase() }|
  7. |also|関数|it|this|val strAlso = str?.also{ println( **it**.toUpperCase()) }|
  8. |with|引数|this|結果の値|val upperStr = with(**str**){ toUpperCase() }|
  9.  
  10. ## apply
  11. ```
  12. val listApply = mutableListOf<String>().apply {
  13. add("hoge")
  14. add("fuga")
  15. }
  16. println( "apply(1): $listApply" )
  17. ```
  18. > apply(1): [hoge, fuga]
  19.  
  20. ## with
  21. ```
  22. val listWith = mutableListOf<String>()
  23. with( listWith ) {
  24. add("hoge")
  25. add("fuga")
  26. }
  27. println( "with(1): $listWith" )
  28. ```
  29. > with(1): [hoge, fuga]
  30.  
  31. ## let
  32. ```
  33. val listLet = mutableListOf<String>()
  34. val ret = listLet.let {
  35. it.add( "hoge" )
  36. it.add( "fuga" )
  37. }
  38. println( "let(1): $listLet" )
  39. println( "let(1): $ret" )
  40. ```
  41. > let(1): [hoge, fuga]
  42. > let(1): true
  43. ```
  44. val listLet2 = mutableListOf<String>().let {
  45. it.add( "hoge" )
  46. it.add( "fuga" )
  47. it
  48. }
  49. println( "let(2): $listLet2" )
  50. ```
  51. > let(2): [hoge, fuga]
  52.  
  53. null でない場合だけ実行する
  54. ```
  55. val listLet3: MutableList<String>? = null
  56. listLet3?.let {
  57. it.add( "hoge" )
  58. it.add( "fuga" )
  59. }
  60. println( "let(3): $listLet3" )
  61. ```
  62. > let(3): null
  63.  
  64. ## run
  65. ```
  66. val listRun = mutableListOf<String>()
  67. val ret2 = listRun.run {
  68. add("hoge")
  69. add("fuga")
  70. }
  71. println( "run(1): $listRun" )
  72. println( "run(1): $ret2" )
  73. ```
  74. > run(1): [hoge, fuga]
  75. > run(1): true
  76. ```
  77. val listRun2 = mutableListOf<String>().run {
  78. add("hoge")
  79. add("fuga")
  80. this
  81. }
  82. println( "run(2): $listRun2" )
  83. ```
  84. > run(2): [hoge, fuga]
Add Comment
Please, Sign In to add comment