-
Cleaning up
Hi,
This is sort of related to an earlier post that I made.
The only way I could think of using an array in multiple places in my program was to repeat code. I was lead to believe this is bad practice however.
If you look below you can see what I have done.
Does anyone know of a way to reduce this code re-usage?
Any help is appreciated,
Thanks,
Dan
Code:
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
String [] a = new String [17];
String [] b = new String [17];
String [] c = new String [17];
String [] d = new String[17];
String [] e = new String[17];
String[] f = new String[17];
String [] g = new String [17];
String[] h = new String[17];
String[] i = new String[17];
String[] j = new String[17];
String[] k = new String[17];
String[] l = new String[17];
String[] m = new String [17];
String [] input = new String [17];
File file = new File("Data.txt");
int line = 0;
try {
Scanner in = new Scanner(file);
in.useDelimiter("\\t|\\n");
int i;
for (line =0; line<17; line++){
for (i=0; i < 13; i++) {
input[i] = in.next();
//System.out.println(input[i]);
}
a [line] = input [0];
b [line] = input [1];
c [line] = input [2];
d [line] = input [3];
e [line] = input [4];
f [line] = input [5];
g [line] = input [6];
h [line] = input [7];
i [line] = input [8];
j [line] = input [9];
k [line] = input [10];
l [line] = input [11];
m [line] = input [12];
}
}
catch (FileNotFoundException e) {
System.out.println("No File");
e.printStackTrace();
}
catch (NullPointerException npe){
System.out.println("A number may not have been initialized");
}
System.out.println(a[4]);
}
/**
* @param args the command line arguments
*/
public static void main(String args[]) {
String [] a = new String [17];
String [] b = new String [17];
String [] c = new String [17];
String [] d = new String[17];
String [] e = new String[17];
String[] f = new String[17];
String [] g = new String [17];
String[] h = new String[17];
String[] i = new String[17];
String[] j = new String[17];
String[] k = new String[17];
String[] l = new String[17];
String[] m = new String [17];
String [] input = new String [17];
File file = new File("Data.txt");
int line = 0;
try {
Scanner in = new Scanner(file);
in.useDelimiter("\\t|\\n");
int i;
for (line =0; line<17; line++){
for (i=0; i < 13; i++) {
input[i] = in.next();
//System.out.println(input[i]);
}
a [line] = input [0];
b [line] = input [1];
c [line] = input [2];
d [line] = input [3];
e [line] = input [4];
f [line] = input [5];
g [line] = input [6];
h [line] = input [7];
i [line] = input [8];
j [line] = input [9];
k [line] = input [10];
l [line] = input [11];
m [line] = input [12];
}
}
catch (FileNotFoundException e) {
System.out.println("No File");
e.printStackTrace();
}
catch (NumberFormatException nfe){
System.out.println("A number is of wrong type");
nfe.getCause();
}
catch (NullPointerException npe){
System.out.println("A number may not have been initialized");
}
System.out.println(a[1]);
Arrays.sort(a);
for (int i = 0; i < x.length; i++){
System.out.println(a[i]);
}
-
Re: Cleaning up
What is this code snippet supposed to be doing?
-
Re: Cleaning up
It reads a tab delimited file, and stores the information in arrays. It works fine.
The System.out functions are just testing it's output they are sort of irrelevant.