Possible, perte de conversion de double en int

Pourquoi suis-je le Possible lossy conversion from double to int erreur et comment puis-je résoudre ce problème?

public class BinSearch {
    public static void main(String [] args)
    {
        double set[] = { -3,10,5,24,45.3,10.5};
        double l = set.length;
        double i, j, first, temp;
        System.out.print("Before it can be searched, this set of numbers must be sorted: ");
        for (i = l-1; i>0; i--)
        {
            first=0;
            for(j=1; j<=i; j++)
            {
                if(set[j] < set[first]) //location of error according to compiler
                {
                    first = j;
                }
                temp = set[first];
                set[first] = set[i];
                set[i] = temp;
            }
        }
    } 
}

Comme vous pouvez le voir, j'ai déjà essayé de remplacer int avec double près du sommet lors de la déclaration de variables, mais il ne semble pas faire le travail.

Que pensez-vous qui va se produire lorsque votre double qui peut être, dire 3.141, est utilisé pour accéder à un index de tableau?
Pour être honnête, je n'ai vraiment aucune idée :/.

OriginalL'auteur TigerLvr | 2014-10-16