Is it possible to convert a java code into android code ??? if yes then please help me
<p>Can anyone please convert this java code into a code which i can use in my android project. the functionality which i need is same as this code. i don't know whether there is any way to use the packages of java like utill in android, if yes then how? and if no then is there any substitute for these packages in android ????</p>

<pre><code>import java.util.PriorityQueue;
import java.util.List;
import java.util.ArrayList;
import java.util.Collections;

class Vertex implements Comparable&lt;Vertex&gt;
{
    public final String name;
    public Edge[] adjacencies;
    public double minDistance = Double.POSITIVE_INFINITY;
    public Vertex previous;
    public Vertex(String argName) 
    { 
        name = argName; 
    }
    public String toString() 
    { 
        return name; 
    }
    public int compareTo(Vertex other)
    {
        return Double.compare(minDistance, other.minDistance);
    }

}


class Edge
{
    public final Vertex target;
    public final double weight;
    public Edge(Vertex argTarget, double argWeight)
    { 
        target = argTarget; 
        weight = argWeight; 
    }
}

public class Dijkstra
{
    public static void computePaths(Vertex source)
    {
        source.minDistance = 0.;
        PriorityQueue&lt;Vertex&gt; vertexQueue = new PriorityQueue&lt;Vertex&gt;();
        vertexQueue.add(source);

        while (!vertexQueue.isEmpty())
        {
            Vertex u = vertexQueue.poll();

            // Visit each edge exiting u
            for (Edge e : u.adjacencies)
            {
                Vertex v = e.target;
                double weight = e.weight;
                double distanceThroughU = u.minDistance + weight;
                if (distanceThroughU &lt; v.minDistance) 
                {
                    vertexQueue.remove(v);
                    v.minDistance = distanceThroughU ;
                    v.previous = u;
                    vertexQueue.add(v);
                }
            }
        }
    }

    public static List&lt;Vertex&gt; getShortestPathTo(Vertex target)
    {
        List&lt;Vertex&gt; path = new ArrayList&lt;Vertex&gt;();
        for (Vertex vertex = target; vertex != null; vertex = vertex.previous)
            path.add(vertex);

        Collections.reverse(path);
            return path;
    }

    public static void main(String[] args)
    {
        Vertex v0 = new Vertex("Harrisburg");
        Vertex v1 = new Vertex("Baltimore");
        Vertex v2 = new Vertex("Washington");
        Vertex v3 = new Vertex("Philadelphia");
        Vertex v4 = new Vertex("Binghamton");
        Vertex v5 = new Vertex("Allentown");
        Vertex v6 = new Vertex("New York");
        v0.adjacencies = new Edge[ ]{ new Edge(v1,  79.83), new Edge(v5,  81.15) };
        v1.adjacencies = new Edge[ ]{ new Edge(v0,  79.75), new Edge(v2,  39.42), new Edge(v3, 103.00) };
        v2.adjacencies = new Edge[ ]{ new Edge(v1,  38.65) };
        v3.adjacencies = new Edge[ ]{ new Edge(v1, 102.53), new Edge(v5,  61.44), new Edge(v6,  96.79) };
        v4.adjacencies = new Edge[ ]{ new Edge(v5, 133.04) };
        v5.adjacencies = new Edge[ ]{ new Edge(v0,  81.77), new Edge(v3,  62.05), new Edge(v4, 134.47), new Edge(v6,  91.63) };
        v6.adjacencies = new Edge[ ]{ new Edge(v3,  97.24), new Edge(v5,  87.94) };

        Vertex[ ] vertices = { v0, v1, v2, v3, v4, v5, v6 };

        computePaths(v6);
        for (Vertex v : vertices)
        {
            System.out.println("Distance to " + v + ": " + v.minDistance);
            List&lt;Vertex&gt; path = getShortestPathTo(v);
            System.out.println("Path: " + path);
        }
    }
}
</code></pre>
