/* package whatever; // don't place package name! */
import java.util.*;
import java.lang.*;
import java.io.*;
/* Name of the class has to be "Main" only if the class is public. */
class Ideone
{
{
)
);
UUID uuid1 = UUID.fromString( "a8ee1e34-cead-11e8-a8d5-f2801f1b9fd1" );
UUID uuid2 = UUID.fromString( "39bda2b4-5885-4f56-a900-411a49beebac" );
UUID uuid3 = UUID.fromString( "0b630385-0452-4b96-9238-20cdce37cf55" );
UUID uuid4 = UUID.fromString( "98d2bacf-3f7f-4ea0-9c17-c91f6702322c" );
System.
out.
println( "Size before adding: " + set.
size() );
set.add( uuid1 );
set.add( uuid2 );
set.add( uuid3 );
set.add( uuid4 );
System.
out.
println( "Size after adding 4 items: " + set.
size() ); // Expect 4.
set.remove( uuid3 );
System.
out.
println( "Size after removing item # 3: " + set.
size() ); // Expect 3.
uuid2 = null; // Release that UUID to garbage-collection.
System.
gc(); // Ask the JVM to run the garbage-collection. Only a suggestion, may be ignored. try {
Thread.
sleep( 1_000
); // Wait a moment, just for the heck of it. e.printStackTrace();
}
System.
out.
println( "Size after making garbage of item # 2: " + set.
size() ); // Expect 2.
}
}
LyogcGFja2FnZSB3aGF0ZXZlcjsgLy8gZG9uJ3QgcGxhY2UgcGFja2FnZSBuYW1lISAqLwoKaW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS5sYW5nLio7CmltcG9ydCBqYXZhLmlvLio7CgovKiBOYW1lIG9mIHRoZSBjbGFzcyBoYXMgdG8gYmUgIk1haW4iIG9ubHkgaWYgdGhlIGNsYXNzIGlzIHB1YmxpYy4gKi8KY2xhc3MgSWRlb25lCnsKCXB1YmxpYyBzdGF0aWMgdm9pZCBtYWluIChTdHJpbmdbXSBhcmdzKSB0aHJvd3MgamF2YS5sYW5nLkV4Y2VwdGlvbgoJewoKICAgICAgICBTZXQgPCBVVUlEID4gc2V0ID0KICAgICAgICAgICAgICAgIENvbGxlY3Rpb25zLnN5bmNocm9uaXplZFNldCgKICAgICAgICAgICAgICAgICAgICAgICAgQ29sbGVjdGlvbnMubmV3U2V0RnJvbU1hcCgKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuZXcgV2Vha0hhc2hNYXAgPD4oKQogICAgICAgICAgICAgICAgICAgICAgICApCiAgICAgICAgICAgICAgICApOwoKICAgICAgICBVVUlEIHV1aWQxID0gVVVJRC5mcm9tU3RyaW5nKCAiYThlZTFlMzQtY2VhZC0xMWU4LWE4ZDUtZjI4MDFmMWI5ZmQxIiApOwogICAgICAgIFVVSUQgdXVpZDIgPSBVVUlELmZyb21TdHJpbmcoICIzOWJkYTJiNC01ODg1LTRmNTYtYTkwMC00MTFhNDliZWViYWMiICk7CiAgICAgICAgVVVJRCB1dWlkMyA9IFVVSUQuZnJvbVN0cmluZyggIjBiNjMwMzg1LTA0NTItNGI5Ni05MjM4LTIwY2RjZTM3Y2Y1NSIgKTsKICAgICAgICBVVUlEIHV1aWQ0ID0gVVVJRC5mcm9tU3RyaW5nKCAiOThkMmJhY2YtM2Y3Zi00ZWEwLTljMTctYzkxZjY3MDIzMjJjIiApOwoKICAgICAgICBTeXN0ZW0ub3V0LnByaW50bG4oICJTaXplIGJlZm9yZSBhZGRpbmc6ICIgKyBzZXQuc2l6ZSgpICk7CgogICAgICAgIHNldC5hZGQoIHV1aWQxICk7CiAgICAgICAgc2V0LmFkZCggdXVpZDIgKTsKICAgICAgICBzZXQuYWRkKCB1dWlkMyApOwogICAgICAgIHNldC5hZGQoIHV1aWQ0ICk7CgogICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbiggIlNpemUgYWZ0ZXIgYWRkaW5nIDQgaXRlbXM6ICIgKyBzZXQuc2l6ZSgpICk7ICAvLyBFeHBlY3QgNC4KCiAgICAgICAgc2V0LnJlbW92ZSggdXVpZDMgKTsKCiAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKCAiU2l6ZSBhZnRlciByZW1vdmluZyBpdGVtICMgMzogIiArIHNldC5zaXplKCkgKTsgIC8vIEV4cGVjdCAzLgoKICAgICAgICB1dWlkMiA9IG51bGw7ICAvLyBSZWxlYXNlIHRoYXQgVVVJRCB0byBnYXJiYWdlLWNvbGxlY3Rpb24uCiAgICAgICAgU3lzdGVtLmdjKCk7IC8vIEFzayB0aGUgSlZNIHRvIHJ1biB0aGUgZ2FyYmFnZS1jb2xsZWN0aW9uLiBPbmx5IGEgc3VnZ2VzdGlvbiwgbWF5IGJlIGlnbm9yZWQuCiAgICAgICAgdHJ5IHsKICAgICAgICAgICAgVGhyZWFkLnNsZWVwKCAxXzAwMCApOyAgLy8gV2FpdCBhIG1vbWVudCwganVzdCBmb3IgdGhlIGhlY2sgb2YgaXQuCiAgICAgICAgfSBjYXRjaCAoIEludGVycnVwdGVkRXhjZXB0aW9uIGUgKSB7CiAgICAgICAgICAgIGUucHJpbnRTdGFja1RyYWNlKCk7CiAgICAgICAgfQoKICAgICAgICBTeXN0ZW0ub3V0LnByaW50bG4oICJTaXplIGFmdGVyIG1ha2luZyBnYXJiYWdlIG9mIGl0ZW0gIyAyOiAiICsgc2V0LnNpemUoKSApOyAgLy8gRXhwZWN0IDIuCgoJfQp9