返回访问方法的问题

时间:2010-03-02 01:04:26

标签: java string

我怎样才能使用accessor方法将名称的第一个字母返回大写,其余的以小写形式返回,无论输入什么?

public class Name
{
    private String first;
    private String last;

    /**
     * Constructor for objects of class Name
     */
    public Name(String firstName, String lastName)
    {
        first = firstName;
        last = lastName;
    }

    /**
     * @returns firstName
     */ 
    public String getFirstname()
    {
        return first;       
    }

    /**
     * @returns lastName
     */ 
    public String getLastname()
    {
        return last;  
    }

    /**
     * @returns Fullname
     */ 
    public String getFullname()
    {
        return first + last;
    }

    /**
     * @para new firstname
     */
    public void setFirstname(String firstName)
    {
        first = firstName;
    }
}

3 个答案:

答案 0 :(得分:1)

 public static String capitalizeFirst(String s) {
   return Character.toUpperCase(s.charAt(0)) + s.substring(1).toLowerCase();
 }

 public String getFirstname() {
    return capitalizeFirst(first);
 }

顾名思义,capitalizeFirst将非空字符串的第一个字符大写,并将字符串的其余部分转换为小写。

答案 1 :(得分:0)

这是我真正想到的唯一方法:

last.substring(0,1).toUpperCase() + last.substring(1).toLowercase()

答案 2 :(得分:0)

使用Commons Lang的StringUtils.capitalize

如果它可用,总是使用它们,它们可能经历了你在bug之后解决bug后才会想到的所有极端情况。