int (char c) { if (c >= 256) return fontMetrics().charWidth(c); if (charWidths == null) { charWidths = new int[256]; FontMetrics fontMetrics = fontMetrics(); for (int i = 0; i < 256; i++) { charWidths[i] = fontMetrics.charWidth(i); } } return charWidths[c]; }