You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: pl/cheatsheets/index.md
+12-12Lines changed: 12 additions & 12 deletions
Original file line number
Diff line number
Diff line change
@@ -3,7 +3,7 @@ layout: cheatsheet
3
3
istranslation: true
4
4
title: Scalacheat
5
5
by: Filip Czaplicki
6
-
about: Dzięki <a href="http://brenocon.com/">Brendan O'Connor</a>. Ten cheatsheet ma być szybkim podsumowaniem konstrukcji składniowych Scali. Licencjonowany przez Brendan O'Connor pod licencją CC-BY-SA 3.0.
6
+
about: Podziękowania dla <a href="http://brenocon.com/">Brendan O'Connor</a>. Ten cheatsheet ma być szybkim podsumowaniem konstrukcji składniowych Scali. Licencjonowany przez Brendan O'Connor pod licencją CC-BY-SA 3.0.
7
7
language: pl
8
8
---
9
9
@@ -13,7 +13,7 @@ language: pl
13
13
| ------ | ------ |
14
14
| <spanid="variables"class="h2">zmienne</span> ||
15
15
|`var x = 5`| zmienna |
16
-
| <spanclass="label success">Dobrze</span> `val x = 5`<br> <spanclass="label important">Żle</span> `x=6`| stała |
16
+
| <spanclass="label success">Dobrze</span> `val x = 5`<br> <spanclass="label important">Źle</span> `x=6`| stała |
17
17
|`var x: Double = 5`| zmienna z podanym typem |
18
18
| <spanid="functions"class="h2">funkcje</span> ||
19
19
| <spanclass="label success">Dobrze</span> `def f(x: Int) = { x*x }`<br> <spanclass="label important">Źle</span> `def f(x: Int) { x*x }`| definicja funkcji <br> ukryty błąd: bez znaku = jest to procedura zwracająca Unit; powoduje to chaos |
@@ -26,7 +26,7 @@ language: pl
26
26
| <spanclass="label success">Dobrze</span> `(1 to 5).map(2*)`<br> <spanclass="label important">Źle</span> `(1 to 5).map(*2)`| funkcja anonimowa: związana metoda infiksowa. Możesz użyć także `2*_`. |
27
27
|`(1 to 5).map { x => val y=x*2; println(y); y }`| funkcja anonimowa: z bloku zwracane jest ostatnie wyrażenie. |
28
28
|`(1 to 5) filter {_%2 == 0} map {_*2}`| funkcja anonimowa: styl potokowy. (lub ponawiasowane). |
29
-
|`def compose(g:R=>R, h:R=>R) = (x:R) => g(h(x))` <br> `val f = compose({_*2}, {_-1})`| funkcja anonimowa: aby przekazać kilka bloków musisz ponawiasować. |
29
+
|`def compose(g:R=>R, h:R=>R) = (x:R) => g(h(x))` <br> `val f = compose({_*2}, {_-1})`| funkcja anonimowa: aby przekazać kilka bloków musisz użyć nawiasów. |
| <spanclass="label success">Dobrze</span> `(xs zip ys) map { case (x,y) => x*y }`<br> <spanclass="label important">Źle</span> `(xs zip ys) map( (x,y) => x*y )`| używaj słowa kluczowego case w funkcjach w celu dopasowywania wzorca. |
65
+
| <spanclass="label success">Dobrze</span> `(xs zip ys) map { case (x,y) => x*y }`<br> <spanclass="label important">Źle</span> `(xs zip ys) map( (x,y) => x*y )`| używaj słowa kluczowego case w funkcjach w celu dopasowywania wzorca (pattern matching). |
66
66
| <spanclass="label important">Źle</span><br>`val v42 = 42`<br>`Some(3) match {`<br>` case Some(v42) => println("42")`<br>` case _ => println("Not 42")`<br>`}`| "v42" jest interpretowane jako nazwa pasująca do każdej wartości typu Int, więc "42" zostaje wypisywane. |
67
67
| <spanclass="label success">Dobrze</span><br>`val v42 = 42`<br>`Some(3) match {`<br>`` case Some(`v42`) => println("42")``<br>`case _ => println("Not 42")`<br>`}`| "\`v42\`" z grawisami jest interpretowane jako istniejąca wartość `v42`, więc "Not 42" zostaje wypisywane. |
68
68
| <spanclass="label success">Dobrze</span><br>`val UppercaseVal = 42`<br>`Some(3) match {`<br>` case Some(UppercaseVal) => println("42")`<br>` case _ => println("Not 42")`<br>`}`|`UppercaseVal` jest traktowane jako istniejąca wartość, nie jako zmienna wzorca, bo zaczyna się z wielkiej litery. W takim razie wartość przechowywana w `UppercaseVal` jest porównywana z `3`, więc "Not 42" zostaje wypisywane. |
0 commit comments