Go中有uint64文字吗?

I'm looking at the numeric types in Go. I want to use uint64 literals. Is this possible in Go?

Here's an example of how I'd like to use uint64 literals:

for i := 2; i <= k; i += 1 { // I want i to be a uint64
    ...
}

you can just cast your integer literal to uint64.

for i := uint64(1); i <= k; i++ {
    // do something
}

Alternatively you could initialize i outside of the for loop, but then it's scoped larger than the loop itself.

var i uint64
for i = 1; i <= k; i++ {
    // note the `=` instead of the `:=`
}
// i still exists and is now k+1

You have to explicitly declare your variables as that type. The int literal will be of type int https://play.golang.org/p/OgaZzmpLfB something like var i uint64 is required. In your example you'd have to change your assignment as well so something like this;

var i uint64
for i = 2; i <= k; i += 1 { // I want i to be a uint64
    ...
}