Go language provides inbuilt support implementation of run-time reflection and allowing a program to manipulate objects with arbitrary types with the help of reflect package. The reflect.String() Function in Golang is used to get the string v’s underlying value, as a string. To access this function, one needs to imports the reflect package in the program.
Syntax:
func (v Value) String() stringParameters: This function does not accept any parameter.
Return Value: This function returns the string v’s underlying value, as a string.
Below examples illustrate the use of the above method in Golang:
Example 1:
// Golang program to illustrate // reflect.String() Function package main import ( "fmt"
"reflect"
) // Main function func main() { var k = reflect.TypeOf(0)
var e = reflect.TypeOf( "" )
//use of String method
fmt.Println(reflect.FuncOf([]reflect.Type{k},
[]reflect.Type{e}, false ).String())
} |
Output:
func(int) string
Example 2:
// Golang program to illustrate // reflect.String() Function package main import ( "fmt"
"reflect"
) type Struct1 struct {
Var1 string
Var2 string
Var3 float64
Var4 float64
} // Main function func main() { NewMap := make(map[string]*Struct1)
NewMap[ "abc" ] = &Struct1{ "abc" , "def" , 1.0, 2.0}
subvalMetric := "Var1"
for _, Value:= range NewMap {
s := reflect.ValueOf(&Value).Elem()
// use of String() method
println(s.String())
println(s.Elem().String())
metric := s.Elem().FieldByName(subvalMetric).Interface()
fmt.Println(metric)
}
} |
Output:
<*main.Struct1 Value> <main.Struct1 Value> abc