小编Ed *_*rel的帖子

如何从另一个类更新一个类中的变量

我意识到这可能是一个非常基本的问题,但我无法弄清楚.

说我有这个主要课程

public class Main{

    public static void main(String[] args){
        int a = 0;
        AddSomething.addOne(a);
        System.out.println("Value of a is: "+String.valueOf(a));
    }
}
Run Code Online (Sandbox Code Playgroud)

这是AddSomething课程和addOne()方法

public class AddSomething{

    public static void addOne(int a){

        a++;

    }
}
Run Code Online (Sandbox Code Playgroud)

addOne方法不添加任何东西

System.out.println("Value of a is: "+String.valueOf(a));
// Prints 0 not 1
Run Code Online (Sandbox Code Playgroud)

如何在类中创建Add类更新变量?aMain

java

5
推荐指数
1
解决办法
1万
查看次数

当不是nil时,在Enumeration上返回块的值

看来,我对Ruby Enumerable有一个奇怪的用例.我试图做类似以下的事情:

result = my_strategies.some_method do |strategy|
    strategy.get_result
end
Run Code Online (Sandbox Code Playgroud)

该方法some_method只是一个占位符,但这个问题的人的后面的基础.

可枚举的my_strategies包含用于从远程服务检索值的有序策略列表; 更优选的策略是在不太优选的策略之前运行,

有时候更优选的策略会失败,因为单独重试不会纠正.在这种情况下,策略将返回零.

我可以通过依赖每个块来看到这样做的方式,因此:

result = nil

my_strategies.each do |strategy|
    result = strategy.get_result
    if not r.nil?
        break
    end
end
Run Code Online (Sandbox Code Playgroud)

这似乎不必要地嘈杂.我想知道在我的第一个例子中是否有一种方法可以替代some_method ; 类似于.any?的东西,但是返回导致块为真的值,而不是返回true.

我也欢迎采用替代方法来实现我的目标.

编辑:我最初问这个问题,因为我尝试过这段代码:

result = my_strategies.find do |strategy|
    strategy.get_result
end
Run Code Online (Sandbox Code Playgroud)

除了这使我成功的策略,而不是它返回时返回的值.我不关心哪种策略让我有价值,我只想知道价值是什么.

ruby enumerable

2
推荐指数
1
解决办法
328
查看次数

标签 统计

enumerable ×1

java ×1

ruby ×1