2012-01-16 4 views
-2

どのようにして2つの値を同時に変更できますか。私はJavaでbツリーのコードを書いています。しかし、私は一度に2つの変数を変更することはできません。 C言語と同様に、ポインタを使用します。しかし、どのようにjavaで行うには?私は私の質問が理解できることを願っています。Javaで一度に2つの値を変更する

+5

「Cのように、ポインタを使用して行います。ポインタの値を更新すると、同じアドレスを指している他のすべてのポインタも更新されますか? – Azodious

+2

JVMは、一度に1つの命令だけを処理します。 2つの変数を同時に変更することはできません。あなたがスレッドを使用することについて話していない限り? – Jivings

+0

ここにいくつかのコードを投稿 –

答えて

0

私はあなたの質問を完全に理解していませんが、Javaでオブジェクト参照を設定することは不可能です。これを使用して、一度に複数の値のセットを変更することができます。例:

class BTreeState { 
    int foo; 
    long bar; 
    String whatever; 
} 

//here you change foo, bar, whatever all at once 
state = new State(1, 2L, "something"); 
1

これらのいずれかが整数の場合、AtomicStampedReferenceを使用できます。定義については、hereを参照してください。

関連する問題