Results 1 to 10 of 10
  1. #1
    LonelyClock is offline Member
    Join Date
    Oct 2011
    Posts
    5
    Rep Power
    0

    Default How to make my program more efficient?

    Hey guys, so my project I have is to take phone numbers from a file and make a list of all the possible words that correspond with that number, let the user pick 1, print the number and the chosen word, and then save it. For example, the number 604 233 7377 is also ADDRESS. My program works and does everything fine. The only problem is that I am using the sample word file, with only over 5000 words. We are suppose to make the program using that, but at the end change it so it can run on a 100,000 word file to chose from. My problem is that while it works on the 5000 word sample file, it will not run on the 100,000 word file, meaning my program is not efficient(i think). Hopefully some1 can shed a little light on how my program can run smoother. Thanks for any help :D
    PS. Long I know, and this is my 1st ever Computer Science course, so I may be using weird things, but it needs to be simple enough that I can understand. Again, any help is appreciated :D
    Java Code:
    import java.io.*;
    import java.util.*;
    public class test {
    	public static void main (String[] args) throws FileNotFoundException {
    		String filePhone = new String("telephone.txt");
    		String[] phoneNumbers = readFile(filePhone);
    		String fileWords = new String("samplewords.txt");
    		String[] words = readFile(fileWords);
    		String[] tmp = sevenChar(words);
    		String[] numToLetters= findWords(phoneNumbers);
    		String[] chosen = new String[phoneNumbers.length];
    			for (int i=0; i<numToLetters.length;i++){
    				int count = count(numToLetters[i], tmp);
    				String[] correctWords = corrWords(numToLetters[i],tmp,count);
    				String userChosen = letUserPick(phoneNumbers[i],correctWords);
    				chosen[i] = userChosen;
    		}
    		for (int i=0;i<chosen.length;i++){
    			System.out.println(chosen[i]);
    		}
    		saveFile(chosen);
    	}
    	public static String[] readFile(String fName) throws FileNotFoundException {
    		File inF = new File(fName);
    		if (!inF.exists())
    			return null;
    		int numOfLines = getNumOfLines(inF);
    		return getReadFile(inF, numOfLines);
    		
    	}
    	public static int getNumOfLines(File inF) throws FileNotFoundException {
    		Scanner in = new Scanner(inF);
    		int counter = 0;
    		while (in.hasNextLine()){
    			in.nextLine();
    			counter++;
    		}
    		in.close();
    		return counter;
    	}
    	public static String[] getReadFile(File inF, int size) throws FileNotFoundException {
    		String[] lines = new String[size];
    		Scanner in = new Scanner(inF);
    		int i = 0;
    		while (in.hasNextLine()){
    			lines[i] = in.nextLine();
    			i++;
    		}
    		in.close();
    		return lines;
    	}
    	public static String[] sevenChar(String[] words){ 
    		String str = "";
    		int j=0;
    		int count=0;
    		for (int i=0;i<words.length; i++){
    			str += words[i];
    			if ((str.length()-j)==7)
    				count++;
    			j=str.length();
    		}
    		String[] tmp = new String[count];
    		int k=0;
    		String str1 = "";
    		j=0;
    		for (int i=0;i<words.length; i++){
    			str1 += words[i];
    			if ((str1.length()-j)==7){
    				tmp[k]=words[i];
    				k++;
    			}
    			j=str1.length();
    		}
    		return tmp;
    	}
    	public static String[] findWords (String[] phoneNumbers){
    		String[] tmp = new String[phoneNumbers.length];
    		for (int i=0; i<phoneNumbers.length; i++)
    			tmp[i] = numbersToLetters(phoneNumbers[i]);
    		return tmp;
    	}		
    	public static String numbersToLetters(String number){
    		String str = "";
    		for (int i=3;i<number.length();i++){
    			if (number.charAt(i)=='2')
    				str += "ABC ";
    			else if (number.charAt(i)=='3')
    				str += "DEF ";
    			else if (number.charAt(i)=='4')
    				str += "GHI ";
    			else if (number.charAt(i)=='5')
    				str += "JKL ";
    			else if (number.charAt(i)=='6')
    				str += "MNO ";
    			else if (number.charAt(i)=='7')
    				str += "PQRS";
    			else if (number.charAt(i)=='8')
    				str += "TUV ";
    			else if (number.charAt(i)=='9')
    				str += "WXYZ";
    			else{
    			}
    		}
    		return str;
    	}
    	public static int count(String numToLetters, String[] tmp){
    		int count=0;
    		int k=0;
    		String str="";
    		for (k=0;k<tmp.length;k++){
    			str += tmp[k];
    			int j=k*7;
    			int i=0;
    			int h=0;
    			int l=0;
    			while (i<numToLetters.length()){
    				if (l==4)
    					l=0;
    				if (numToLetters.charAt(i)==str.charAt(j)){
    					i+=4-l;
    					j++;
    					h++;
    				}
    				else {
    					i++;
    					l++;
    				}
    			}
    			if (h==7){
    				count++;
    				
    			}
    		}
    		return count;
    	}
    	public static String[] corrWords(String numToLetters, String[] tmp, int count){
    		String[] temp = new String[count];
    		int k=0;
    		String str="";
    		for (;k<tmp.length;k++){
    			str += tmp[k];
    			int j=k*7;
    			int i=0;
    			int h=0;
    			int l=0;
    			while (i<numToLetters.length()){
    				if (l==4)
    					l=0;
    				if (numToLetters.charAt(i)==str.charAt(j)){
    					i+=4-l;
    					j++;
    					h++;
    				}
    				else {
    					i++;
    					l++;
    				}
    			}
    			if (h==7){
    				for (i=0;i<temp.length;i++)
    					temp[i] = tmp[k];
    			}
    		}
    		return temp;
    	}
    	public static String letUserPick(String phoneNumbers,String[] correctWords)throws FileNotFoundException{
    		String in = output(phoneNumbers,correctWords);
    		String tmp = phoneNumbers+" is "+in; 
    		return tmp;
    	}
    	public static String output(String phoneNumbers, String[] correctWords){
    		System.out.println("For Number: "+phoneNumbers);
    		if (correctWords.length==0){
    			System.out.println("There are no names for this number");
    			return null;
    		}
    		for (int i=0;i<correctWords.length;i++)
    			System.out.println((i+1)+"." +correctWords[i]);
    			String in = myInput();
    		return in;
    	}
    	public static String myInput(){ 
    		String myMessage;
    		System.out.print("Input: ");
    		Scanner myIn = new Scanner(System.in);
    		myMessage = myIn.nextLine();
    		return myMessage;
    	}
    	public static void saveFile(String[] chosen)throws FileNotFoundException{
    		File myFile = new File("result.txt");
    		if (myFile.exists()){
    			System.out.println("File already exists");
    			System.exit(0);
    		}
    		PrintWriter output = new PrintWriter(myFile);
    		for (int i=0;i<chosen.length;i++)
    			output.println(chosen[i]);
    		output.close();  
    	}
    }
    Last edited by sunde887; 11-27-2011 at 06:44 AM. Reason: Added code tags, [code]...[/code]

  2. #2
    pbrockway2 is offline Moderator
    Join Date
    Feb 2009
    Location
    New Zealand
    Posts
    4,585
    Rep Power
    12

    Default Re: How to make my program more efficient?

    it will not run on the 100,000 word file
    Why not? I'm not asking for speculation as to cause, but what actually happens when you run the program using the larger samplewords.txt file? (what behaviour?, what output?, what runtime exceptions?)

    [Edit] Also it might be a good idea to say how the program is going about selecting the words. For instance what is the sevenChar() method doing? It twice concatenates all of the entries in the words file, but it isn't clear why. If you are only interested in 7 letter words then readFile() should check the length of the words and only add ones of the appropriate length.
    Last edited by pbrockway2; 11-27-2011 at 07:12 AM.

  3. #3
    LonelyClock is offline Member
    Join Date
    Oct 2011
    Posts
    5
    Rep Power
    0

    Default Re: How to make my program more efficient?

    To answer your first question, I use the command prompt to test the program and when i run the program with samplewords, its fine, but with the larger file, it doesnt do anything. It basically freezes and I have to exit the command prompt and open a new one in order to use it again. Ya, im very unorganized and i usually do these things at the end. I fixed it checking all the word entries twice and now only does it once, but i think i might have to do binary search. It is a method our teacher has taught us in class and i think that using it will be much better. basically i elliminated the count method and i think that for the corrWords method i will have to use binary search. The problem is that I'm not sure how to tackle the problem. How do I make it so that my binary search will find the start and end of 2 numbers. What i mean is if im looking for words starting with A to C, how do I go about using binary method? Unless there is some better way that is not far beyond my skill level then I'm all ears. Thanks again :) oh and thanks for the readFile suggestion. for some reason I didnt think of that :P

  4. #4
    pbrockway2 is offline Moderator
    Join Date
    Feb 2009
    Location
    New Zealand
    Posts
    4,585
    Rep Power
    12

    Default Re: How to make my program more efficient?

    Am I right in thinking that sevenChar() was supposed to identify 7 character words? If so, do what I suggested and use readFile() to only ever add these words. Then see how your program gets on.

    100,000 words is a lot if you have to write an essay. But a computer thinks very little of looking at this many words and checking them.

    [Edit] I notice that corrWords() and count() do whatever it is they're supposed to do with some more string concatentation. This concatentation is to be avoided.

    If it were me I would attack this problem as follows:

    (1) Read in an array of 7 digit phone numbers
    (2) Read in an array of words: only adding those of length 7
    (3) Have a helper method that takes a phone number and a word and returns true/false if there is a match

    The helper method could be called to form an array of possible matches from which the user can select.

    Only if this approach (which involves numPhoneNumbers*numWords calls to the helper method, say a million or two) proved hoplessly slow would I worry about efficiency. And if I did worry about it the first thing I would do is replace arrays with lists as that would halve the work. (Lists just grow, so you don't have to count then add in two passes.)

    [Edit] Someone suggested using a Map here a day or so ago for more or less this problem. Basically you precalculate the number associated with each word as you read the dictionary. Then it's just a matter of lookup. If you haven't worked with the collection classes, this may not be appropriate. But if you have then Map<String,List<String>> could be just the thing.
    Last edited by pbrockway2; 11-27-2011 at 08:07 AM.

  5. #5
    JosAH's Avatar
    JosAH is offline Moderator
    Join Date
    Sep 2008
    Location
    Voorschoten, the Netherlands
    Posts
    13,763
    Blog Entries
    7
    Rep Power
    21

    Default Re: How to make my program more efficient?

    A week ago I helped another poster with a similar problem; maybe you also find it of use; read all about it here.

    kind regards,

    Jos
    cenosillicaphobia: the fear for an empty beer glass

  6. #6
    LonelyClock is offline Member
    Join Date
    Oct 2011
    Posts
    5
    Rep Power
    0

    Default Re: How to make my program more efficient?

    Thanks for the help so far. I think im going to tackle this method that pbrockway2 suggests. Unfortunately we have not learned lists and maps yet, so I would not be allowed to use those. As to JosAH, the language used is beyond what I have learnt in the course and would not be allowed to use it, but thanks anyway. I'll keep posting if i hit another road block or if i finally finish :D

  7. #7
    pbrockway2 is offline Moderator
    Join Date
    Feb 2009
    Location
    New Zealand
    Posts
    4,585
    Rep Power
    12

    Default Re: How to make my program more efficient?

    I think im going to tackle this method that pbrockway2 suggests.
    If you mean the 3-point plan, that was just off the top of my head. But I think it's a decent enough place to start if you are stuck with using arrays.

    The intention was to eliminate all of the string concatenation. And instead of those strings (and associated methods) that replace digits with a sequence of matching letters the focus is on a helper method that somehow returns true if it is passed "604 233 7377" and "ADDRESS" etc. Such a method could just check character by character for instance.

    -----

    It is probably best to start with a new class for this second implementation, work step by step making sure every method has a clear purpose and that it does what it is supposed to do. Do post back if you get stuck.

  8. #8
    LonelyClock is offline Member
    Join Date
    Oct 2011
    Posts
    5
    Rep Power
    0

    Default Re: How to make my program more efficient?

    So i've hit another road block. The trouble is when I try to fix something, is that I make it more confusing and it ends up being longer than the original that I had. Not only that but they dont even work properly. This one works fine, the only thing that I need to do is make it more efficient. So any tips on how to make it more efficient? Like certain methods and such, because after about 3 hours i have realized that the 2 other programs i wrote are worse so i came back to this one. Here is the edited version of the program that I have done.

    import java.io.*;
    import java.util.*;
    public class test2 {
    public static void main (String[] args) throws FileNotFoundException {
    String filePhone = new String("telephone.txt");
    String[] phoneNumbers = readFile(filePhone);
    String fileWords = new String("samplewords.txt");
    String[] words = readFile(fileWords);
    String[] tmp = sevenChar(words);
    String[] numToLetters= findWords(phoneNumbers);
    String[] chosen = new String[phoneNumbers.length];
    for (int i=0; i<numToLetters.length;i++){
    String[] correctWords = corrWords(numToLetters[i],tmp);
    String userChosen = letUserPick(phoneNumbers[i],correctWords);
    chosen[i] = userChosen;
    }
    for (int i=0;i<chosen.length;i++){
    System.out.println(chosen[i]);
    }
    saveFile(chosen);
    }
    public static String[] readFile(String fName) throws FileNotFoundException {
    File inF = new File(fName);
    if (!inF.exists())
    return null;
    int numOfLines = getNumOfLines(inF);
    return getReadFile(inF, numOfLines);

    }
    public static int getNumOfLines(File inF) throws FileNotFoundException {
    Scanner in = new Scanner(inF);
    int counter = 0;
    while (in.hasNextLine()){
    in.nextLine();
    counter++;
    }
    in.close();
    return counter;
    }
    public static String[] getReadFile(File inF, int size) throws FileNotFoundException {
    String[] lines = new String[size];
    Scanner in = new Scanner(inF);
    for (int i=0;in.hasNextLine();i++)
    lines[i] = in.nextLine();
    in.close();
    return lines;
    }
    public static String[] sevenChar(String[] words){
    String str = "";
    int j=0;
    int count=0;
    for (int i=0;i<words.length; i++){
    str += words[i];
    if ((str.length()-j)==7)
    count++;
    j=str.length();
    }
    String[] tmp = new String[count];
    int k=0;
    String str1 = "";
    j=0;
    for (int i=0;i<words.length; i++){
    str1 += words[i];
    if ((str1.length()-j)==7){
    tmp[k]=words[i];
    k++;
    }
    j=str1.length();
    }
    return tmp;
    }
    public static String[] findWords (String[] phoneNumbers){
    String[] tmp = new String[phoneNumbers.length];
    for (int i=0; i<phoneNumbers.length; i++)
    tmp[i] = numbersToLetters(phoneNumbers[i]);
    return tmp;
    }
    public static String numbersToLetters(String number){
    String str = "";
    for (int i=3;i<number.length();i++){
    if (number.charAt(i)=='2')
    str += "ABC ";
    else if (number.charAt(i)=='3')
    str += "DEF ";
    else if (number.charAt(i)=='4')
    str += "GHI ";
    else if (number.charAt(i)=='5')
    str += "JKL ";
    else if (number.charAt(i)=='6')
    str += "MNO ";
    else if (number.charAt(i)=='7')
    str += "PQRS";
    else if (number.charAt(i)=='8')
    str += "TUV ";
    else if (number.charAt(i)=='9')
    str += "WXYZ";
    else{
    }
    }
    return str;
    }
    public static String[] corrWords(String numToLetters, String[] tmp){
    int count=0;
    int k=0;
    String str="";
    String spaces="";
    for (k=0;k<tmp.length;k++){
    str += tmp[k];
    int j=k*7;
    int i=0;
    int h=0;
    int l=0;
    while (i<numToLetters.length()){
    if (l==4)
    l=0;
    if (numToLetters.charAt(i)==str.charAt(j)){
    i+=4-l;
    j++;
    h++;
    }
    else {
    i++;
    l++;
    }
    }
    if (h==7){
    count++;
    spaces += tmp[k];
    }
    }
    String[] temp = new String[count];
    String [] temp1 = spaces.split(" ");
    for (int i=0;i<temp.length;i++)
    temp[i] = temp1[i];
    return temp;
    }
    public static String letUserPick(String phoneNumbers,String[] correctWords)throws FileNotFoundException{
    String in = output(phoneNumbers,correctWords);
    String tmp = phoneNumbers+" is "+in;
    return tmp;
    }
    public static String output(String phoneNumbers, String[] correctWords){
    System.out.println("For Number: "+phoneNumbers);
    if (correctWords.length==0){
    System.out.println("There are no names for this number");
    return null;
    }
    for (int i=0;i<correctWords.length;i++)
    System.out.println((i+1)+"." +correctWords[i]);
    String in = myInput();
    return in;
    }
    public static String myInput(){
    String myMessage;
    System.out.print("Input: ");
    Scanner myIn = new Scanner(System.in);
    myMessage = myIn.nextLine();
    return myMessage;
    }
    public static void saveFile(String[] chosen)throws FileNotFoundException{
    File myFile = new File("result.txt");
    if (myFile.exists()){
    System.out.println("File already exists");
    System.exit(0);
    }
    PrintWriter output = new PrintWriter(myFile);
    for (int i=0;i<chosen.length;i++)
    output.println(chosen[i]);
    output.close();
    }
    }

  9. #9
    pbrockway2 is offline Moderator
    Join Date
    Feb 2009
    Location
    New Zealand
    Posts
    4,585
    Rep Power
    12

    Default Re: How to make my program more efficient?

    This one works fine, the only thing that I need to do is make it more efficient.
    I'm not sure that efficiency is a "something extra" that you can add to your existing program. Rather, I'll have to stick with suggesting that you write a program with does not do any string concatenation. (along the lines of read in the phone numbers into an array, read in the (filtered) dictionary into an array, then for each phone number check each dictionary element for a match)

    Others may be able to suggest something more along the lines of what you want.

  10. #10
    LonelyClock is offline Member
    Join Date
    Oct 2011
    Posts
    5
    Rep Power
    0

    Default Re: How to make my program more efficient?

    Well this is what I have done. I've eliminated everything unecessary and it still doesn't work. I don't know how to do the program without using the strings that I have used, so if anybody has any advice that will be greatly appreciated, but if not then i guess this is all i got. Time to write the documentation and hand it in.

    import java.io.*;
    import java.util.*;
    public class test2 {
    public static void main (String[] args) throws FileNotFoundException {
    int seven = 7;
    int three = 3;
    int four = 4;
    int none = 0;
    String result = "result.txt";
    String result1 = "result2.txt";
    String filePhone = new String("telephone.txt");
    String[] phoneNumbers = readFile(filePhone);
    String fileWords = new String("samplewords.txt");
    String[] words = readFile(fileWords);
    String[] tmp = checkNumOfChar(words,seven);
    String[] numToLetters= findWords(phoneNumbers);
    String[] chosen = new String[phoneNumbers.length];
    for (int i=0; i<numToLetters.length;i++){
    String[] correctWords = corrWords(numToLetters[i],tmp, seven, none);
    String userChosen = letUserPick(phoneNumbers[i],correctWords);
    chosen[i] = userChosen;
    }
    for (int i=0;i<chosen.length;i++)
    System.out.println(chosen[i]);
    saveFile(chosen,result);
    String[] tmp1 = checkNumOfChar(words,three);
    String[] tmp2 = checkNumOfChar(words,four);
    String[] chosen1 = new String[phoneNumbers.length];
    for (int i=0;i<numToLetters.length;i++){
    String[] correctWords = corrWords(numToLetters[i],tmp, seven, none);
    String[] correctWords1 = corrWords(numToLetters[i], tmp1, three, none);
    String[] correctWords2 = corrWords(numToLetters[i], tmp2, four, three);
    String userChosen = letUserPick(phoneNumbers[i], correctWords1, correctWords2, correctWords);
    chosen1[i]=userChosen;
    }
    for (int i=0;i<chosen1.length;i++)
    System.out.println(chosen1[i]);
    saveFile(chosen1, result1);
    }
    public static String[] readFile(String fName) throws FileNotFoundException {
    File inF = new File(fName);
    if (!inF.exists())
    return null;
    int numOfLines = getNumOfLines(inF);
    return getReadFile(inF, numOfLines);

    }
    public static int getNumOfLines(File inF) throws FileNotFoundException {
    Scanner in = new Scanner(inF);
    int counter = 0;
    while (in.hasNextLine()){
    in.nextLine();
    counter++;
    }
    in.close();
    return counter;
    }
    public static String[] getReadFile(File inF, int size) throws FileNotFoundException {
    String[] lines = new String[size];
    Scanner in = new Scanner(inF);
    for (int i=0;in.hasNextLine();i++)
    lines[i] = in.nextLine();
    in.close();
    return lines;
    }
    public static String[] checkNumOfChar(String[] words, int num){
    String str = "";
    for (int i=0;i<words.length; i++){
    if ((words[i].length())==num){
    str += " "+words[i];
    }
    }
    String[] tmp = str.split(" ");
    String[] temp = new String[tmp.length-1];
    for (int i=0;i<temp.length;i++){
    temp[i] = tmp[i+1];
    }
    return temp;
    }
    public static String[] findWords (String[] phoneNumbers){
    String[] tmp = new String[phoneNumbers.length];
    for (int i=0; i<phoneNumbers.length; i++)
    tmp[i] = numbersToLetters(phoneNumbers[i]);
    return tmp;
    }
    public static String numbersToLetters(String number){
    String str = "";
    for (int i=3;i<number.length();i++){
    if (number.charAt(i)=='2')
    str += "ABC ";
    else if (number.charAt(i)=='3')
    str += "DEF ";
    else if (number.charAt(i)=='4')
    str += "GHI ";
    else if (number.charAt(i)=='5')
    str += "JKL ";
    else if (number.charAt(i)=='6')
    str += "MNO ";
    else if (number.charAt(i)=='7')
    str += "PQRS";
    else if (number.charAt(i)=='8')
    str += "TUV ";
    else if (number.charAt(i)=='9')
    str += "WXYZ";
    else{
    }
    }
    return str;
    }
    public static String[] corrWords(String numToLetters, String[] tmp,int num, int start){
    if (numToLetters.length()<27){
    String[] temp1=new String[0];
    return temp1;
    }
    int k=0;
    String spaces="";
    for (k=0;k<tmp.length;k++){
    int j=0;
    int i=(start*4);
    int l=0;
    while (i<(4*(num+start))){
    if (l==4)
    l=0;
    if (numToLetters.charAt(i)==tmp[k].charAt(j)){
    i+=4-l;
    j++;
    l=0;
    }
    else {
    i++;
    l++;
    }
    }
    if (j==num){
    spaces += " "+tmp[k];
    }
    }
    String [] temp1 = spaces.split(" ");
    return temp1;
    }
    public static String letUserPick(String phoneNumbers,String[] correctWords)throws FileNotFoundException{
    String in = output(phoneNumbers,correctWords);
    String tmp = phoneNumbers+" is "+in;
    return tmp;
    }
    public static String output(String phoneNumbers, String[] correctWords){
    int count=1;
    System.out.println("For Number: "+phoneNumbers);
    if (correctWords.length<2){
    System.out.println("There are no names for this number");
    return null;
    }
    for (int i=1;i<correctWords.length;i++) {
    System.out.println((count)+"." +correctWords[i]);
    count++;
    }
    String in = myInput();
    return in;
    }
    public static String letUserPick(String phoneNumbers,String[] correctWords1,String[] correctWords2, String[] correctWords)throws FileNotFoundException{
    String in = output(phoneNumbers,correctWords1, correctWords2, correctWords);
    String tmp = phoneNumbers+" is "+in;
    return tmp;
    }
    public static String output(String phoneNumbers, String[] correctWords1,String[] correctWords2, String[] correctWords){
    int count=1;
    System.out.println("For Number: "+phoneNumbers);
    if (correctWords1.length<2 || correctWords2.length<2){
    System.out.println("There are no names for this number");
    return null;
    }
    for (int i=1;i<correctWords1.length;i++) {
    for (int j=1;j<correctWords2.length;j++){
    System.out.println((count)+"."+correctWords1[i]+" "+correctWords2[j]);
    count++;
    }
    }
    String in= myInput();
    return in;
    }
    public static String myInput(){
    String myMessage;
    System.out.print("Input: ");
    Scanner myIn = new Scanner(System.in);
    myMessage = myIn.nextLine();
    return myMessage;
    }
    public static void saveFile(String[] chosen, String result)throws FileNotFoundException{
    File myFile = new File(result);
    if (myFile.exists()){
    System.out.println("File already exists");
    System.exit(0);
    }
    PrintWriter output = new PrintWriter(myFile);
    for (int i=0;i<chosen.length;i++)
    output.println(chosen[i]);
    output.close();
    }
    }

Similar Threads

  1. more efficient way to make this??? [LOOK]
    By Green in forum New To Java
    Replies: 10
    Last Post: 09-09-2011, 02:01 AM
  2. Replies: 4
    Last Post: 07-23-2011, 09:08 PM
  3. Need help making program more efficient
    By cid in forum New To Java
    Replies: 4
    Last Post: 06-30-2010, 08:22 PM
  4. Replies: 1
    Last Post: 03-22-2010, 09:21 AM
  5. Trying to make a GUI program
    By GettinGwap in forum New To Java
    Replies: 2
    Last Post: 11-05-2008, 12:37 AM

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •