public Map<String, String> getParameters()
This map can be modified and remains in scope for the PageReference object. For instance, you could do:
PageReference.getParameters().put('id', myID);
Parameter keys are case-insensitive. For example:
System.assert( ApexPages.currentPage().getParameters().get('myParamName') == ApexPages.currentPage().getParameters().get('myparamname'));