The thresholds at which people pay income tax will be frozen until the end of the 2030/31 financial year it was revealed in the Budget, longer than most experts predicted.