Smallest representation of data?
<p>I'm sorry in advance if this question is really weird. I am sending data to a queue that I don't want duplicate data sent to. The program has no way of preventing duplicate data items and just accepts them but I believe the queue ID have to be unique and I can specify those myself.  So I want to try  to make my ID generated based on the data I'm sending.</p>

<p>Say I have two string:</p>

<pre><code>hello, SO how are you? //base case
hello, SO how are you? //same
hello, SO how are You? //different, notice the capital Y
What up, SO! //completely different
</code></pre>

<p>What can I convert it to in Java that would match the first two strings above but make the other two unique?  I haven't tried much so far(because I'm not sure exactly what is the best thing to convert it to), but I did play around a bit with <code>GZIPOutputStream</code> but the size seemed kind of similar and I wasn't sure if it was the most efficient(i.e. smallest size like some crazy hex character or something).</p>

<p>I hope someone understands what I'm asking but if not, let me know and I'll try my best to clarify.</p>

<p><em>Edit: sorry, Didn't just want something for strings, I'm dealing with lists(and maybe dictionaries) also. sorry about that</em></p>

<p>Thanks </p>

<p>CODE:</p>

<pre><code>public class hashtest {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        convert("hello world"); //same
        convert("hello world"); //same

        convert("hello world!"); //exclamation mark
        convert("hello World"); //capital W

        convert_list(new int[] {5, 2, -3}); //same
        convert_list(new int[] {5, 2, -3}); //same
        convert_list(new int[] {5, 3, -3}); //different
        convert_list(new int[] {5, 2, -4}); //different

    }

    private static void convert_list(int[] is) {
        // TODO Auto-generated method stub
        System.out.println("word is " + is);
        System.out.println("hashcode is " + is.toString());
        System.out.println("****");
    }

    private static void convert(String string) {
        // TODO Auto-generated method stub
        System.out.println("word is " + string);
        System.out.println("hashcode is " + string.hashCode());
        System.out.println("****");
    }

}
</code></pre>
