• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Jeanne Boyarsky
  • Ron McLeod
  • Paul Clapham
  • Liutauras Vilda
Sheriffs:
  • paul wheaton
  • Rob Spoor
  • Devaka Cooray
Saloon Keepers:
  • Stephan van Hulst
  • Tim Holloway
  • Carey Brown
  • Frits Walraven
  • Tim Moores
Bartenders:
  • Mikalai Zaikin

code

 
Greenhorn
Posts: 22
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hi Can anyone explain me how the value for m4a[x].counter , m4a[x].maybeNew(x) are calculated?
Say when x=0,x=1
thanks.
 
Bartender
Posts: 1849
15
Eclipse IDE Spring VI Editor Java Linux Windows
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
The best way to tackle this problem is with a piece of paper and a pencil.

You'll need an eraser, too.
 
Rancher
Posts: 3742
16
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Which bits don't you understand ?
Try putting some System.out.println statements in at various points so that you can see the value of the various variables as the program proceeds.
This should make it fairly clear what is going on. If you don't understand any of the output, post what results you are getting and what you don't understand about them and someone should be able to explain it.

Did you copy this code from somewhere ? If so, you might want to check that you copied lines 19 and 20 correctly. They don't make much sense - you create an object, modify one of it's fields and then let it be garbage collected.
 
Citra Dil
Greenhorn
Posts: 22
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I have used eclipse debugger and I know out put in each places.I also used a pen and paper but I am getting stuck because i dont understand few steps.Joanne,lines are correct but may be not relevant because this code is to learn the basics thoroughly.i will list few of my doubts

1.As counter is defined before while loop, m4a[x].counter = 0 always isnt it?
also m4.counter = 0 always isnt it?

2.I did not understand how the method maybeNew(x) works
though the value of x (index) changes, return 1 gives the total outcome as "1" isnt it?

3.for eg. when x=0,
count = count + m4a[0].maybeNew(0)
index < 5
I am stuck here.



 
Ranch Hand
Posts: 5575
Eclipse IDE Windows XP Java
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Citra Dil wrote:
1.As counter is defined before while loop, m4a[x].counter = 0 always isnt it?
also m4.counter = 0 always isnt it?


Yes. the reason is you are creating a new object every time.

Citra Dil wrote:
2.I did not understand how the method maybeNew(x) works
though the value of x (index) changes, return 1 gives the total outcome as "1" isnt it?
3.for eg. when x=0,
count = count + m4a[0].maybeNew(0)
index < 5
I am stuck here.


here i dont get your point. probably you are trying to tell that how this m4a[x].maybeNew(x); works?
if yes, in while loop you are creating a new object and place the object in index of x , and then you are accessing the object by m4a[x] then executing the method. and whatever value passing to the method < 5 then method returns 1 else 0. the object/m4 created by method maybeNew will be garbage collected.


 
Citra Dil
Greenhorn
Posts: 22
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hi seetharaman, thanks for your quick reply.But I guess you are repeating my question in your answer.May be I am not able to express what exactly I need.
My doubt is: In all cases when x=0,x=1.... till x=4 ,m4a[x].maybeNew(x) = 1.Isnt it?

I am able to verify the values for count,x in eclipse.
Can anyone tell me is there anyway to display the value for the below in any tool?
1)counter
2)m4a[x].counter
3)m4a[x].maybeNew(x)
4)m4.counter

few more info.the below are the results I get.

count = 14 ,m4a[1].counter = 1


count = 25 ,m4a[1].counter = 1


count = 14 ,m4a[1].counter = 1


count = 20 ,m4a[1].counter = 1

 
reply
    Bookmark Topic Watch Topic
  • New Topic