如何使我在ArrayList中记录的名称以大写字母开头

时间:2018-11-23 11:19:31

标签: java

如何使我在ArrayList中记录的姓名以大写字母开头?

public class Main {

    public static String city() {
        Scanner input = new Scanner(System.in);
        ArrayList<String> names = new ArrayList<String>();
        int i = 0;
        String name;

        while (i < 50) {
            name = input.next();
            if (name.equals("end")) break;
            Character.isUpperCase(name.charAt(0)); // ????????????
            names.add(name);
            i++;
        }
        System.out.println(names);
        return city();
    }

3 个答案:

答案 0 :(得分:3)

您可以通过以下方式将String中每个ArrayList的首字母大写:

String capitalizedName = Character.toUpperCase(name.charAt(0)).concat(name.substring(1));

答案 1 :(得分:1)

与此:

String newName = name.substring(0, 1).toUpperCase() + name.substring(1);

如果您希望名称的其余部分小写:

String newName = name.substring(0, 1).toUpperCase() + name.substring(1).toLowerCase();

答案 2 :(得分:1)

也可以这样

 names.stream()
.map(str -> str.substring(0, 1).toUpperCase() + 
    str.substring(1))
.forEach(System.out::println);

万一StringUtils.capitalize(..)中的commons-lang,情况会很直接