What is the difference between Go's if-else and switch statements?