From 90a88e671797ff2d352bb8af54b3b7fe423a09e5 Mon Sep 17 00:00:00 2001 From: malvinval Date: Mon, 16 Oct 2023 11:44:01 +0700 Subject: [PATCH 1/2] add: penjelasan naked return statement pada function --- basic/07_fungsi/README.md | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/basic/07_fungsi/README.md b/basic/07_fungsi/README.md index a0cc6a1..819dfdc 100644 --- a/basic/07_fungsi/README.md +++ b/basic/07_fungsi/README.md @@ -101,3 +101,25 @@ func main(){ Di dunia go, kita nanti akan sering sekali menjumpai fungsi dengan multiple return, baik fungsi-fungsi bawaan dari go atau funsgi dari library yang kita pakai. + +## Naked Return + +Dalam bahasa pemrograman Go, kita bisa melakukan *naked return*. Artinya return statement dalam body function tidak secara eksplisit menentukan variable yang akan direturn. + +Syntax: `func nama_function(param1 type, param2 type) (nama_variable_yang_ingin_direturn type) {return}` + +Contoh: + +```go +func multiply(a int, b int) (result int) { + result = a * b + + return +} + +func main() { + fmt.Println(multiply(10, 7)) +} +``` + +Function `multiply()` akan return variable `result`. Maka outputnya adalah `70`. \ No newline at end of file From e0aa57ab01e7383342ed6850dfd9f494d87bb07e Mon Sep 17 00:00:00 2001 From: malvinval Date: Sun, 22 Oct 2023 13:05:02 +0700 Subject: [PATCH 2/2] add: memecah string menjadi slice rune --- basic/09_string/README.md | 25 ++++++++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-) diff --git a/basic/09_string/README.md b/basic/09_string/README.md index d7c446c..d41f2df 100644 --- a/basic/09_string/README.md +++ b/basic/09_string/README.md @@ -77,4 +77,27 @@ func main(){ pesan := []string{"bell", "shade"} fmt.Println(strings.Join(pesan, " ")) } -``` \ No newline at end of file +``` + +## memecah string menjadi slice rune + +Dalam bahasa Go, kita bisa memecah sebuah string menjadi kumpulan rune dalam sebuah slice. Misal kita punya string `"Hello"`, maka akan diconvert jadi sebuah slice `['H','e','l','l','o']`. + +Syntax: `strSlice := []rune(variableString)` + +Contoh: + +```go +str := "Hello" + +strSlice := []rune(str) + +fmt.Println(strSlice) +``` +Output: + +`[72 101 108 108 111]` + +Jangan bingung dengan output angka-angka diatas. Itu hanya ASCII Code (representasi angka dari tiap karakter). + +Hint: Teknik `string to rune slice` ini cocok diterapin kalo kita mau sorting sebuah string \ No newline at end of file