Sortera i Java

Min shoppinglista blir lite otymplig ibland när vi ska storhandla. Jag kom på att om den sorterar sig efter Chark, Mejeri och Grönsaksdisk m fl så blir det lättare i affären. När allt kategoriserats behöver det sorteras. Det var lättare än jag kunde tänka mig i Java.

En Comparator kodades för objekten som ska sorteras:

public class ShoppingListItemCategoryComparator implements Comparator {

	@Override
	public int compare(ShoppingListItem arg0, ShoppingListItem arg1) {
		int category = arg0.getCategory().compareTo(arg1.getCategory());
		return category == 0 ? arg0.getItem().compareTo(arg1.getItem()) : category;
	}
}

Objekten sorteras sedan lätt i appen:

Collections.sort(mEntries, new ShoppingListItemCategoryComparator());

regexp i Java

Igår lärde jag mig regexp:a på ett sätt jag gillar i Java. Har mest använt String.split() på olika sätt innan. Så här gör jag nu:

String re = ”(?:@CALL)([^~]*)~(.*)”;
Pattern p = Pattern.compile(re, Pattern.MULTILINE);
Matcher m = p.matcher(phoneCall);

while (m.find())
{
    alert(0, ”Telefon”, m.group(1) + ” ringer frÃ¥n ” + m.group(2), false);
}