Open In App

reflect.String() Function in Golang with Examples

Last Updated : 05 May, 2020
Improve
Improve
Like Article
Like
Save
Share
Report

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() string

Parameters: 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


Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads