Question mark and colon in float declaration c#

What does the following code mean?
I’ve seen that question mark indicates nullable type, but I don’t think thats the case here.

float f = UnityEngine.Random.value > 0.5f ? -1f : 1f;

It’s called a ternary operator: ?: operator - the ternary conditional operator - C# reference | Microsoft Learn