2016-01-07 67 views
0

所以基本上,我想移動一個對象數據到另一個對象(Queue jockeying)。移動一個對象數據到另一個

讓我們說我有

int counter1,counter2 

,我有方法

void enQueue1(object data) 
void enQueue2(object data) 
void deQueue1() 
void deQueue2() 

並舉例說,我這樣做

obj1.enQueue1("data 1") 
obj2.enQueue2("data 2") 
obj2.enQueue2("data 3") 
obj2.enQueue2("data 4") 

我想幹什麼時的區別計數器1和計數器2> 1,我想從較大的計數器移動數據,所以我有一個平衡的計數器1和計數器2

那麼,如何將「數據4」從obj2移動到obj1?

我寫了一個僞代碼看起來像這樣:

if (counter1 - counter2) == -2 
obj2.deQueue2 
obj1.enQueue(obj2.enQueue("data 4")) 

我如何在Java代碼中實現這一目標? 非常感謝您的幫助

謝謝!

+0

爲什麼「-2」?你能給我們提供一個counter1和counter2的簡單例子嗎? – 0X0nosugar

+0

是的,所以基本上我不希望兩個對象之間的隊列差異大於2. counter1和counter2用於統計兩個對象內部的數據數量,例如對象1有3個數據,所以counter1變量將是3.無論如何,我已經解決了,謝謝伯格的回答 –

+0

像counter1 = 2和counter2 = 4?那麼counter1 = 2和counter2 = 5呢?或counter1 = 4和counter2 = 2? – 0X0nosugar

回答

1

有你deQueue方法返回最後插入的對象,並從當前類中刪除它,你可能已經做:

Object deQueue() 

然後

+0

謝謝隊友!我解決了它 –

相關問題