From 0eea646621446e62ec7a21ca593d3275214bafba Mon Sep 17 00:00:00 2001 From: Steven Tracey Date: Tue, 23 Aug 2022 22:19:02 -0400 Subject: [PATCH] End of day --- .idea/vcs.xml | 6 +++ main.go | 101 +++++++++++++++++++++++++++++++++++++++++++++++++- 2 files changed, 106 insertions(+), 1 deletion(-) create mode 100644 .idea/vcs.xml diff --git a/.idea/vcs.xml b/.idea/vcs.xml new file mode 100644 index 0000000..94a25f7 --- /dev/null +++ b/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/main.go b/main.go index c979f54..feda23e 100644 --- a/main.go +++ b/main.go @@ -2,6 +2,105 @@ package main import "fmt" +var globalVariable = "this is a global variable" + func main() { - fmt.Println("kajshdf") + dataTypesExamples() + + printingExamples() +} + +func printingExamples() { + age := 69 + name := "Joe" + + //Print + fmt.Print("hello, ") // does NOT add a new line + fmt.Print("world! \n") // add new line manually + fmt.Print("new line \n") + + //Println + fmt.Println("Hello on one line!") // automatically adds new line + fmt.Println("Good bye on one line!") + + //Passing multiple values + fmt.Println("My age is", age, "and my name is", name) + + //Printf (formatted strings) %_ = format specifier - List of specifiers https://pkg.go.dev/fmt + // Does NOT add a new line like fmt.Print() + fmt.Printf("my age is %v and my name is %v \n", age, name) // %v takes any type of variables in the order they are provided + fmt.Printf("My age is %q and my name is %q \n", age, name) // %q adds quotes around the variables in the order they are provided, must be strings! + fmt.Printf("age is of type %T \n", age) // %T gets the type of the first variable passed after string to be printed + fmt.Printf("You scored %f points! \n", 225.55) // %f passes a float value passed + fmt.Printf("You scored %0.1f points! \n", 225.55) // %X.Xf rounds the passed float to the specified length + + // Sprintf (saved formatted strings) + var sprintfVar = fmt.Sprintf("My age is %v and my name is %v \n", age, name) + fmt.Println("The saved string is:", sprintfVar) +} + +func dataTypesExamples() { + + // Date Types Doc https://go.dev/ref/spec#Types + + fmt.Println("-------------------------STRINGS-------------------------") + // String docs https://go.dev/ref/spec#String_types + + // Three ways to initialize a variable + var nameOne string = "mario" + var nameTwo = "luigi" + var nameThree string + + fmt.Println(nameOne) + fmt.Println(nameTwo) + fmt.Println(nameThree) + fmt.Println("All three: ", nameOne, nameTwo, nameThree) + + nameOne = "peach" + nameThree = "bowser" + fmt.Println(nameOne, nameTwo) + + // Shorthand for variable initialization + nameFour := "yoshi" + fmt.Println(nameFour) + + // Numeric data types doc https://go.dev/ref/spec#Numeric_types + + fmt.Println("-------------------------INTS-------------------------") + + // ints + var ageOne int = 20 + var ageTwo = 30 + ageThree := 40 + + fmt.Println(ageOne, ageTwo, ageThree) + + // bits & memory + + // signed (positive and negative) + var numOne int8 = 25 // -128 to 127 + var numTwo int16 = 35 // -32768 to 32767 (-32,768 to 32,767) + var numThree int32 = 45 // -2147483648 to 2147483647 (-2,147,483,648 to 2,147,483,647) + var numThreeAndAHalf rune = 45 // rune is the same as int32 + var numFour int64 = 55 // -9223372036854775808 to 9223372036854775807 (-9,223,372,036,854,775,808 to 9,223,372,036,854,775,807) + + fmt.Println(numOne, numTwo, numThree, numThreeAndAHalf, numFour) + + // unsigned (all positive) + var posNumOne uint8 = 65 // 0 to 255 + var posNumTwo uint16 = 75 // 0 to 65535 (65,535) + var posNumThree uint32 = 85 // 0 to 4294967295 (4,294,967,295) + var posNumFour uint64 = 95 // 0 to 18446744073709551615 (18,446,744,073,709,551,615) + + fmt.Println(posNumOne, posNumTwo, posNumThree, posNumFour) + + fmt.Println("-------------------------FLOATS-------------------------") + + // decimal values default to float64 + var floatOne float32 = 25.98 + var floatTwo float64 = 9843216984654.68432168454651968 + floatThree := 6854324.6854654 + + fmt.Println(floatOne, floatTwo, floatThree) + }