publicvoid report(String s, String t, int result, int revResult)
{ if (result == -1)
{ if (revResult != 1)
errln(" --> Test Failed");
} elseif (result == 1)
{ if (revResult != -1)
errln(" --> Test Failed");
} elseif (result == 0)
{ if (revResult != 0)
errln(" --> Test Failed");
}
}
publicvoid TestCollationKey()
{
String source = "-abcdefghijklmnopqrstuvwxyz#&^$@";
Random r = new Random(3); int s = checkValue(r.nextInt() % source.length()); int t = checkValue(r.nextInt() % source.length()); int slen = checkValue((r.nextInt() - source.length()) % source.length()); int tlen = checkValue((r.nextInt() - source.length()) % source.length());
String subs = source.substring((s > slen ? slen : s), (s >= slen ? s : slen));
String subt = source.substring((t > tlen ? tlen : t), (t >= tlen ? t : tlen));
myCollator.setStrength(Collator.TERTIARY);
CollationKey CollationKey1 = myCollator.getCollationKey(subs);
CollationKey CollationKey2 = myCollator.getCollationKey(subt); int result = CollationKey1.compareTo(CollationKey2); // Tertiary int revResult = CollationKey2.compareTo(CollationKey1); // Tertiary
report(("CollationKey(" + subs + ")"), ("CollationKey(" + subt + ")"), result, revResult);
myCollator.setStrength(Collator.SECONDARY);
CollationKey1 = myCollator.getCollationKey(subs);
CollationKey2 = myCollator.getCollationKey(subt);
result = CollationKey1.compareTo(CollationKey2); // Secondary
revResult = CollationKey2.compareTo(CollationKey1); // Secondary
report(("CollationKey(" + subs + ")") , ("CollationKey(" + subt + ")"), result, revResult);
myCollator.setStrength(Collator.PRIMARY);
CollationKey1 = myCollator.getCollationKey(subs);
CollationKey2 = myCollator.getCollationKey(subt);
result = CollationKey1.compareTo(CollationKey2); // Primary
revResult = CollationKey2.compareTo(CollationKey1); // Primary
report(("CollationKey(" + subs + ")"), ("CollationKey(" + subt + ")"), result, revResult);
String addOne = subs + "\uE000";
CollationKey1 = myCollator.getCollationKey(subs);
CollationKey2 = myCollator.getCollationKey(addOne);
result = CollationKey1.compareTo(CollationKey2); if (result != -1)
errln("CollationKey(" + subs + ")" + ".LT." + "CollationKey(" + addOne + ") Failed.");
result = CollationKey2.compareTo(CollationKey1); if (result != 1)
errln("CollationKey(" + addOne + ")" + ".GT." + "CollationKey(" + subs + ") Failed.");
} privatestaticint checkValue(int value)
{
value *= (value > 0) ? 1 : -1; return value;
} publicvoid TestCompare()
{
String source = "-abcdefghijklmnopqrstuvwxyz#&^$@";
Random r = new Random(3); int s = checkValue(r.nextInt() % source.length()); int t = checkValue(r.nextInt() % source.length()); int slen = checkValue((r.nextInt() - source.length()) % source.length()); int tlen = checkValue((r.nextInt() - source.length()) % source.length());
String subs = source.substring((s > slen ? slen : s), (s >= slen ? s : slen));
String subt = source.substring((t > tlen ? tlen : t), (t >= tlen ? t : tlen));
myCollator.setStrength(Collator.TERTIARY); int result = myCollator.compare(subs, subt); // Tertiary int revResult = myCollator.compare(subt, subs); // Tertiary
report(subs, subt, result, revResult);
myCollator.setStrength(Collator.SECONDARY);
result = myCollator.compare(subs, subt); // Secondary
revResult = myCollator.compare(subt, subs); // Secondary
report(subs, subt, result, revResult);
myCollator.setStrength(Collator.PRIMARY);
result = myCollator.compare(subs, subt); // Primary
revResult = myCollator.compare(subt, subs); // Primary
report(subs, subt, result, revResult);
String addOne = subs + "\uE000";
result = myCollator.compare(subs, addOne); if (result != -1)
errln("Test : " + subs + " .LT. " + addOne + " Failed.");
result = myCollator.compare(addOne, subs); if (result != 1)
errln("Test : " + addOne + " .GE. " + subs + " Failed.");
} privatestatic Collator myCollator = Collator.getInstance();
}
Messung V0.5 in Prozent
¤ Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.0.17Bemerkung:
(vorverarbeitet am 2026-10-11)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.