В общем, строгая типизация Go приводит к некоторым подробным выражениям. Тем не менее, словосочетание не означает заикания. Преобразования типов полезны, и важно, чтобы эти полезные вещи были явно указаны.
Уловка для упрощения заключается в том, чтобы не писать ненужные преобразования типов, и для этого вам нужно обратиться к документации, такой как определение языка.
В вашем конкретном случае вам нужно знать, что len() возвращает int и, далее, значение> = 0. Вам нужно знать, что 4 - это константа, которая примет тип int в этом выражении, и вам нужно знать, что целочисленное деление вернет целочисленное частное, которое в этом случае будет неотрицательным int, и на самом деле именно тот ответ, который вы хотите.
i := len(l)/4
Этот случай прост.
Да, спасибо за ваш ответ. Это простой пример, но он раздражает выражениями типа «math.Max», например. – GiantSquid
«Вам нужно знать, что 4 - это константа, которая примет тип int в этом выражении». Мне интересно, откуда вы это знаете, потому что константы не имеют определенного типа? – kristianp