passing enums by ref in java

前端 未结 2 1855
慢半拍i
慢半拍i 2021-01-17 18:39

How can i pass enum parameter by reference in java? Any solution?

相关标签:
2条回答
  • 2021-01-17 19:01

    Java is pass by value - always.

    You pass references, not objects. References are passed by value.

    You can change the state of a mutable object that the reference points to in a function that it is passed into, but you cannot change the reference itself.

    0 讨论(0)
  • 2021-01-17 19:10

    In Java you cannot pass any parameters by reference.

    The only workaround I can think of would be to create a wrapper class, and wrap an enum.

    public class EnumReference {
        public YourEnumType ref;
    }
    

    And then you would use it like so:

    public void someMethod(EnumReference reference) {
        reference.ref = YourEnumType.Something;
    }
    

    Now, reference will contain a different value for your enum; essentially mimicking pass-by-reference.

    0 讨论(0)
提交回复
热议问题