Solved

Help with a If statement

Posted on 2004-04-25
15
221 Views
Last Modified: 2010-03-31
I need to have a If statement that does some comparisons. I will have some names of ojbects dm1-dm50. There will be a tining cycle being used in the workout. But if certain dm's are in the workout there will need to be a different timing cycle used. So I need a If statement to check throught the process to replace the timing cycle.  This will happen when the 2 lists used with the wrapper will be making one list to make the single audiofile out of the many. Below is the listener fot the buttons and details classes below.


public class MyListener implements ActionListener {

    private List theList = new ArrayList();

    public MyListener() {
    }

    public void addButton(JButton theButtonToAdd) {
       theButtonToAdd.addActionListener(this);  // Listen for the button to be pressed
    }

    public void actionPerformed(ActionEvent e) {
       JButton button = (JButton)e.getSource();
       String command = button.getActionCommand();
       AudioDetails details = new AudioDetails(command, timing);
       if (thList.contains(details))
       {
          theList.remove(details);
       }
       else
       {
          theList.add(details);
       }
    }




    public List getList() { return theList; }

}


public class AudioDetails
{
   private String AudioFile;
   private String Timing;
   // could add other fields as needed

   public AudioDetails(String file, String timing)
   {
      AudioFile = file;
      Timing = timing;
   }

   public String getAudioFile()
   {
      return AudioFile;
   }

   public String getTiming()
   {
      return Timing;
   }
}
0
Comment
Question by:Drop_of_Rain
  • 6
  • 4
  • 3
  • +2
15 Comments
 
LVL 92

Expert Comment

by:objects
Comment Utility
so what is the logic you need to achieve exactly?
0
 

Author Comment

by:Drop_of_Rain
Comment Utility
I can change the details in the statements later

 If  (dm6, dm8, dm21, dm22, dm26)  are being used, then 2 seconds more then the timing cycle being used needs to be used instead.

If (dm9, dm11, dm28, dm31, dm35)  are being used, then 3 seconds more then the timing cycle being used needs to be used instead.

Otherwise the regular timing cycle
0
 
LVL 3

Expert Comment

by:fave_17
Comment Utility
What is the flag that will indicate a dm1...dm50 object is used?
0
 

Author Comment

by:Drop_of_Rain
Comment Utility
Ok I need to go into more detail here. There will be many different ActionCommands coming from many different buttons all going into the MyListener class and then AudioDetails class making up the final list. That list will then become starems and go into the class that makes the single audio file out of that list.
0
 
LVL 2

Expert Comment

by:d_tan
Comment Utility
I am not really clear on the logic behind your program. . .

but for the if statement, how about using a bit vector and using bitwise and's and or's to see which dms are on/off?

dtan
0
 

Author Comment

by:Drop_of_Rain
Comment Utility
<I am not really clear on the logic behind your program. . .>

I wrote this to objects because he was the one helping me with the question and has been helping me with my program a lot already.

Ok I will explain it a little better for you.

The program will create a single audiofile out of many small audiofiles. There are many buttons that have there ActionCommands set as audiofiles. The user will be able to create any custom workout they want by choosing what they want in the workout by presseing those buttons. There will be a timing cycle automaticly placed between each option. The user can see what they have selected and remove anyone they want removed. This is handled by MyListener it removes the timing cylcle as well. Details create one list out of two in a way. This If statement will be used in other places as well, I will just make slight changes to it.

This needs to happen when the list is being created.
0
 
LVL 92

Expert Comment

by:objects
Comment Utility
do you actually need to maintain this information while the user is selecting the buttons, or could you instead determine the relevant timings at the point when you assemble the single audio.
0
IT, Stop Being Called Into Every Meeting

Highfive is so simple that setting up every meeting room takes just minutes and every employee will be able to start or join a call from any room with ease. Never be called into a meeting just to get it started again. This is how video conferencing should work!

 

Author Comment

by:Drop_of_Rain
Comment Utility
Yes it wouldn't matter when it happens really.
0
 
LVL 9

Expert Comment

by:mmuruganandam
Comment Utility
Any how for every action, you will attach an AudioDetails.  That itself will have the timings.  Then what exactly are  you looking for.


Regards,
Muruga
0
 

Author Comment

by:Drop_of_Rain
Comment Utility
<Then what exactly are  you looking for>


There will be a tining cycle being used in the workout. But if certain dm's are in the workout there will need to be a different timing cycle used because it takes longer to do.
0
 
LVL 92

Assisted Solution

by:objects
objects earned 200 total points
Comment Utility
> Yes it wouldn't matter when it happens really.

then theres no need to worry about it in the code you have posted above.
Deal with it in the code that assembles the final audio.
0
 
LVL 9

Expert Comment

by:mmuruganandam
Comment Utility
That is what I am about to ask... post your code which assembles the final audio
0
 
LVL 9

Accepted Solution

by:
mmuruganandam earned 300 total points
Comment Utility
0
 

Author Comment

by:Drop_of_Rain
Comment Utility
Thanks for all the support,
Christopher
0
 
LVL 9

Expert Comment

by:mmuruganandam
Comment Utility
that's great... thanx.. :-)
0

Featured Post

How your wiki can always stay up-to-date

Quip doubles as a “living” wiki and a project management tool that evolves with your organization. As you finish projects in Quip, the work remains, easily accessible to all team members, new and old.
- Increase transparency
- Onboard new hires faster
- Access from mobile/offline

Join & Write a Comment

Suggested Solutions

Title # Comments Views Activity
hash value 2 38
scoreUp challenge 14 47
XML Paring  Error - Premature end of file. 7 55
micro services vs rest web services 16 45
Java Flight Recorder and Java Mission Control together create a complete tool chain to continuously collect low level and detailed runtime information enabling after-the-fact incident analysis. Java Flight Recorder is a profiling and event collectio…
Introduction This article is the first of three articles that explain why and how the Experts Exchange QA Team does test automation for our web site. This article explains our test automation goals. Then rationale is given for the tools we use to a…
Viewers will learn about basic arrays, how to declare them, and how to use them. Introduction and definition: Declare an array and cover the syntax of declaring them: Initialize every index in the created array: Example/Features of a basic arr…
This tutorial explains how to use the VisualVM tool for the Java platform application. This video goes into detail on the Threads, Sampler, and Profiler tabs.

772 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

11 Experts available now in Live!

Get 1:1 Help Now