• 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
  • Ron McLeod
  • Paul Clapham
  • Tim Cooke
  • Jeanne Boyarsky
Sheriffs:
  • Rob Spoor
  • Devaka Cooray
  • Liutauras Vilda
Saloon Keepers:
  • Stephan van Hulst
  • Tim Holloway
  • Carey Brown
  • Tim Moores
  • Mikalai Zaikin
Bartenders:
  • Piet Souris

Hashing Index

 
Greenhorn
Posts: 3
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hashing Issue!

I'm required to produce a Hasing Index which centers around a class(Student) which represents a student who has a name and a course.

The program needs to use 3 classes:

1. Student class
Store the student details and calculates the hash index.



2. Storage class
Contains an array of Student objects and uses the hash index returened from the Student object.
The class should define a method which accepts an instance of the Student class to be stored
into the array of Student objects.



3. MainProgram Class
This class is the main program that accepts the user's input and stores the details using a storage
object. The program should keep requesting input until the list of students is full. Once the list is full, the list should be displayed for the user to see.





Notes

* I need to obtain the user input using Java's JOptionPane class and the call showInputDialog method.Also there is no inheritance between the above three classes.

Could anyone please guide me on this! I'm not sure as to where I should start, how to incorporate an array that contians 24 elements etc...

Many thanks

Oliver
 
Ranch Hand
Posts: 1970
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Check out DoYourOwnHomework and ShowSomeEffort.

In the mean-time, I have one specific thing to comment-on: -

Originally posted by Oliver Tennant:



It is not true that you must System.exit() after using JOptionPane. It is true that programs using Swing (of which JOptionPane is a part) can have a problem of failing to exit when you think they ought to do so. But System.exit() is an ugly hack of a solution to this.

The failure to exit comes about because Swing programs do not exit until all Frames/Panes are disposed. When you create a Frame/Pane giving no parent, Swing "helpfully" creates one for you. Unfortunately, this automatically-created Frame is inaccessible to you and is never disposed. Hence the application never exits.

The clean solution to this is never to create a Frame or Pane without giving a parent. Create a JFrame of your own, and use it as the parent. When it's time to exit, and you have disposed all other Frames and Panes, dispose of the extra JFrame, and the application will exit.

Something like this (untested code): -

 
Oliver Tennant
Greenhorn
Posts: 3
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hi,

Perhaps I should have put this include in the post; "I don't want someone to do it for me, however I'm really struggling with this one and I simply need some assistance in terms of direction of coding the application".

I most certainly do not want anyone to submit the code and say here you go! I need to understand Java, however as I previously said I�m struggling, therefore I require some input on how best to approach this task, where I should be looking to begin etc... And things to bear in mind.

Thanks for your help anyhow :-)
 
(instanceof Sidekick)
Posts: 8791
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Here's a neat approach when a big problem feels overwhelming. Write some code outside the assignment to exercise the smallest part of the problem you can pick out. For example, could you make this code say "true" for each test?

Try to write one new test, then a very few lines of new "production" code. Every new test that passes is a small victory - give yourself a treat! That keeps it fun instead of sweating for hours and hours wondering if it will work. And if you get stuck, you'll have a failing test that clearly shows what you need to do ... or ask us about.
 
Ranch Hand
Posts: 225
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Thanks Stan, for this very sound advice, this technique has helped me plenty during coding, in the past. My thesis was based on a paper "Breaking a complex system into its subsystems' which followed a similar approach that a complex system can be simplified if you can break it up into its subsystems and measure the interactions between those subsystems this paper was written by Roger C. Conant.
 
Peter Chase
Ranch Hand
Posts: 1970
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
OK, well...

One of the previous posters said when a programming task looks too big, try to identify smaller parts of it that are more manageable. In your case, though, the homework-setter has already split the task down into its parts. (S)he has defined the classes and given strong hints what data and methods are needed.

Another previous poster said to develop and test little bits of the task separately, rather than trying to do the whole thing in one go. That is indeed a good thing to do.

An extra thing I would add is that you should translate all the wordy descriptions of the methods into method declarations (the name of the method and its parameters), before you try to write the bodies (implementations) of the methods.
 
Oliver Tennant
Greenhorn
Posts: 3
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hi all,

Thank you very much for the kind words of advice etc...

I'll make a start and if possible post segments for your review here and there for additional input.

Oliver
 
reply
    Bookmark Topic Watch Topic
  • New Topic