Golang program to demonstrate the reflect.NumField() function

Here, we are going to demonstrate the reflect.NumField() function in Golang (Go Language).
Submitted by Nidhi, on March 24, 2021

Problem Solution:

In this program, we will create a Student structure that contains some fields. Then we will get the total number of fields of structure using reflect.NumField() function and print the result on the console screen.

Program/Source Code:

The source code to demonstrate the reflect.NumField() function is given below. The given program is compiled and executed successfully.

// Golang program to demonstrate the
// reflect.NumField() function

package main

import (
	"fmt"
	"reflect"
)

type Student struct {
	Id   int
	Name string
	Age  int
}

func main() {
	stu := Student{Id: 101, Name: "Rohit", Age: 31}

	res := reflect.TypeOf(stu)
	fmt.Println("Total of fields are: ", res.NumField())
}

Output:

Total of fields are:  3

Explanation:

In the above program, we declare the package main. The main package is used to tell the Go language compiler that the package must be compiled and produced the executable file. Here, we imported the fmt and reflect packages to use time and reflect related functions.

In the main() function, we created a Student structure that contains three members Id, Name, Age.  After that, we get the total number of fields in the Student structure using reflect.NumField() function and printed the result on the console screen.

Golang Reflection Programs »






Comments and Discussions




Languages: » C » C++ » C++ STL » Java » Data Structure » C#.Net » Android » Kotlin » SQL
Web Technologies: » PHP » Python » JavaScript » CSS » Ajax » Node.js » Web programming/HTML
Solved programs: » C » C++ » DS » Java » C#
Aptitude que. & ans.: » C » C++ » Java » DBMS
Interview que. & ans.: » C » Embedded C » Java » SEO » HR
CS Subjects: » CS Basics » O.S. » Networks » DBMS » Embedded Systems » Cloud Computing
» Machine learning » CS Organizations » Linux » DOS
More: » Articles » Puzzles » News/Updates

© https://www.includehelp.com some rights reserved.