В первой версии вызывается неявное приведение для преобразования num1
в double
. Во втором случае вы используете явное приведение, чтобы сделать то же самое. В этом случае оба подхода одинаковы, но неявные и явные приведения не обязательно должны быть одинаковыми.
Я думаю, что явное приведение предпочтительнее просто потому, что яснее читать, что происходит, и не требует инициализации новой переменной.