How to declare a function argument that can accept any type in Go

1 Answer

0 votes
package main

import "fmt"

func AcceptAnyType(x interface{}) {
    switch v := x.(type) {
        case int:
            fmt.Println("int:", v)
        case float64:
            fmt.Println("float64:", v)
        case string:
            fmt.Println("string:", v)
        case bool:
            fmt.Println("bool:", v)
        case rune:
            fmt.Println("rune (char):", string(v))
        default:
            fmt.Println("Unknown type")
    }
}

func main() {
    AcceptAnyType(860)
    AcceptAnyType(3.14)
    AcceptAnyType("ABCD")
    AcceptAnyType(true)
    AcceptAnyType('A')
}



/*
run:

int: 860
float64: 3.14
string: ABCD
bool: true
rune (char): A

*/

 



answered Aug 1, 2025 by avibootz
...