File tree Expand file tree Collapse file tree 6 files changed +142
-0
lines changed Expand file tree Collapse file tree 6 files changed +142
-0
lines changed Original file line number Diff line number Diff line change
1
+ package main
2
+
3
+ /**
4
+ * Note: The code will not run and throw an error: prefixMap declared and not used
5
+ * As we have declare map and not used in and this is error in go-lang
6
+ */
7
+ func main () {
8
+
9
+ /**
10
+ * Declare a map of map type with string.
11
+ * var <variable-name> map[<key-type>] <value-type>
12
+ */
13
+ var prefixMap map [string ] string
14
+
15
+ /**
16
+ * make will initialize the map; if we don't use make
17
+ * declaration will set to null;
18
+ */
19
+ prefixMap = make (map [string ] string )
20
+
21
+ }
Original file line number Diff line number Diff line change
1
+ package main
2
+
3
+ import "fmt" ;
4
+
5
+ func GetPrefix (name string , mustDel bool ) (prefix string ) {
6
+
7
+ /**
8
+ * Short hand way to declare and initialize map
9
+ */
10
+ prefixMap := map [string ] string {
11
+ "Ashwin" : "Sr. Fullstack Engineer" ,
12
+ "Kumar" : "Sr. Engineering Manager" ,
13
+ "Saju" : "Sr. Solution Architect" ,
14
+ "Ajay" : "Sr. Solution Architect" , // comma is needed here
15
+ }
16
+
17
+ if mustDel {
18
+ /**
19
+ * Old way to perform delete operation on map.
20
+ * Will no more work for new version of Go compiler
21
+ */
22
+ // prefixMap["Saju"] = "", false
23
+
24
+ /**
25
+ * New way to perform delete operation on map.
26
+ */
27
+ delete (prefixMap , "Saju" )
28
+ }
29
+
30
+ return prefixMap [name ]
31
+ }
32
+
33
+ func main () {
34
+
35
+ fmt .Println ("What is Saju's role? He is " + GetPrefix ("Saju" , false ))
36
+
37
+ fmt .Println ("What is Saju's role? He is " + GetPrefix ("Saju" , true ))
38
+
39
+ }
Original file line number Diff line number Diff line change
1
+ package main
2
+
3
+ import "fmt" ;
4
+
5
+ func GetPrefix (name string ) (prefix string ) {
6
+
7
+ var prefixMap map [string ] string
8
+ prefixMap = make (map [string ] string )
9
+
10
+ /**
11
+ * Insert key and value into the map.
12
+ *
13
+ * <map-variable>[<key>] = <value>
14
+ */
15
+ prefixMap ["Ashwin" ] = "Sr. Fullstack Engineer"
16
+ prefixMap ["Kumar" ] = "Sr. Engineering Manager"
17
+ prefixMap ["Saju" ] = "Sr. Solution Architect"
18
+ prefixMap ["Ajay" ] = "Sr. solution Architect"
19
+
20
+ return prefixMap [name ]
21
+ }
22
+
23
+ func main () {
24
+
25
+ fmt .Println ("What is Ashwin's role? He is " + GetPrefix ("Ashwin" ))
26
+
27
+ }
Original file line number Diff line number Diff line change
1
+ package main
2
+
3
+ import "fmt" ;
4
+
5
+ func GetPrefix (name string ) (prefix string ) {
6
+
7
+ /**
8
+ * Short hand way to declare and initialize map
9
+ */
10
+ prefixMap := map [string ] string {
11
+ "Ashwin" : "Sr. Fullstack Engineer" ,
12
+ "Kumar" : "Sr. Engineering Manager" ,
13
+ "Saju" : "Sr. Solution Architect" ,
14
+ "Ajay" : "Sr. Solution Architect" , // comma is needed here
15
+ }
16
+
17
+ return prefixMap [name ]
18
+ }
19
+
20
+ func main () {
21
+
22
+ fmt .Println ("What is Ashwin's role? He is " + GetPrefix ("Ashwin" ))
23
+
24
+ }
Original file line number Diff line number Diff line change
1
+ package main
2
+
3
+ import "fmt" ;
4
+
5
+ func GetPrefix (name string ) (prefix string ) {
6
+
7
+ /**
8
+ * Short hand way to declare and initialize map
9
+ */
10
+ prefixMap := map [string ] string {
11
+ "Ashwin" : "Sr. Fullstack Engineer" ,
12
+ "Kumar" : "Sr. Engineering Manager" ,
13
+ "Saju" : "Sr. Solution Architect" ,
14
+ "Ajay" : "Sr. Solution Architect" , // comma is needed here
15
+ }
16
+
17
+ /**
18
+ * Perform update operation on map.
19
+ */
20
+ prefixMap ["Kumar" ] = "Delivery Manager"
21
+ prefixMap ["Ajay" ] = "Sr. Project Manager"
22
+
23
+ return prefixMap [name ]
24
+ }
25
+
26
+ func main () {
27
+
28
+ fmt .Println ("What is Kumar's role? He is " + GetPrefix ("Kumar" ))
29
+ fmt .Println ("What is Ajay's role? He is " + GetPrefix ("Ajay" ))
30
+
31
+ }
You can’t perform that action at this time.
0 commit comments