时间:2010-07-24 17:31:33

标签: java pass-by-reference

7 个答案:

答案 0 :(得分:71)

答案 1 :(得分:20)

答案 2 :(得分:15)

答案 3 :(得分:13)

答案 4 :(得分:12)

您可以使用java.util.concurrent.atomic.AtomicInteger

答案 5 :(得分:8)

您可以像这样设计新课程:

public class Inte{
       public int x=0;
}

以后你可以创建这个类的对象:

Inte inte=new Inte();

然后你可以传递inte作为你要传递整数变量的参数:

public void function(Inte inte) {
some code
}

所以更新整数值:

inte.x=value;

获取价值:

Variable=inte.x;

答案 6 :(得分:5)

您可以创建一个Reference类来包装基元:

<?= $form->field($model, 'conditions')->checkbox(array('label'=>'Offerted')); ?>

然后,您可以创建将Reference作为参数的函数:

public class Ref<T>
{
    public T Value;

    public Ref(T value)
    {
        Value = value;
    }
}

用法:

public class Utils
{
    public static <T> void Swap(Ref<T> t1, Ref<T> t2)
    {
        T temp = t1.Value;
        t1.Value = t2.Value;
        t2.Value = temp;
    }
}

希望这有帮助。