Obrigado a todos vocês que me ajudaram na resolução deste exercício do livro java como programar:
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package genericosjava.treino;
/**
*
* @author rafacyber
*/
public class GenericMethodTest {
public static <E> void printArray( E[] inputArray)
{
for (E element: inputArray)
System.out.printf("%s", element);
System.out.println();
}
public static <E extends Comparable<E>> void sort( E[] inputArray)
{
//for (E element: inputArray)
// System.out.printf("%s", element);
//System.out.println();
//System.out.println(inputArray[2]);
//--------------------------------------------------------
int smallest;
for ( int i = 0; i < inputArray.length - 1; i++)
{
smallest = i;
for ( int index = i + 1; index < inputArray.length; index++)
{
if (inputArray[index].compareTo(inputArray[smallest]) == -1)
smallest = index;
}
swap( i, smallest, inputArray );
printPass( i + 1, smallest, inputArray );
}
}
public static <E extends Comparable<E>>void swap(int first, int second, E[] inputArray)
{
Object temporary = inputArray[first];
inputArray[first] = inputArray[second];
inputArray[ second ] = (E)temporary;
}
public static <E extends Comparable<E>> void printPass( int pass, int index, E[] inputArray )
{
System.out.print(String.format("after pass %2d: ", pass ));
for ( int i = 0; i < index; i++)
System.out.print(inputArray[i] + " ");
System.out.print(inputArray[index] + "* ");
for( int i = index + 1; i < inputArray.length; i++)
System.out.print(inputArray[i] + " ");
System.out.print("\n ");
for ( int j = 0; j < pass; j++)
System.out.print("-- ");
System.out.println("\n");
}
public static void main(String args[])
{
Integer[] integerArray = {1, 3, 5, 2, 4};
Double[] doubleArray = {1.1, 5.5, 3.3, 2.2, 5.5, 7.7, 6.6};
Character[] characterArray = {'H', 'E', 'L', 'L', 'O'};
//System.out.println("Array integerArray contains:" );
//printArray(integerArray );
//System.out.println("\nArray doubleArray contains:" );
//printArray( doubleArray );
//System.out.println("\nArray characterArrat contains: ");
//printArray(characterArray);
sort(integerArray);
sort(doubleArray);
sort(characterArray);
}
}
Claro que tem muita coisa para melhorar… demorei para caramba para sacar estes genéricos…tomara que eu não esqueço de tão cedo…