/** 时代Java - N o w J a v a . c o m 提 供 **/
import java.util.Formattable;
import java.util.FormattableFlags;
import java.util.Formatter;
public class Main {
public static void main(String[] argv) {
FormattablePerson fp = new FormattablePerson("Ken", "Smith");
System.out.printf("%s %n", fp);
System.out.printf("%#s %n", fp);
System.out.printf("%S %n", fp);
System.out.printf("%#S %n", fp);
}
}
class FormattablePerson implements Formattable {
private String firstName = "Unknown";
private String lastName = "Unknown";
/* 来自 n o w j a v a . c o m*/
public FormattablePerson(String firstName, String lastName) {
this.firstName = firstName;
this.lastName = lastName;
}
// Other code goes here...
public void formatTo(Formatter formatter, int flags, int width, int precision) {
String str = this.firstName + " " + this.lastName;
int alternateFlagValue = FormattableFlags.ALTERNATE & flags;
if (alternateFlagValue == FormattableFlags.ALTERNATE) {
str = this.lastName + ", " + this.firstName;
}
// Check if uppercase variant of the conversio is being used
int upperFlagValue = FormattableFlags.UPPERCASE & flags;
/**代码未完, 请加载全部代码(NowJava.com).**/
本文系作者在时代Java发表,未经许可,不得转载。如有侵权,请联系nowjava@qq.com删除。