我一直试图找出如何为课程创建程序。到目前为止,我已经完成了其余部分,但我仍然不确定如何开始它。
我需要以任何格式接收姓名:jOhn, joHN, JoHn
并将其转换为John
。我一直在寻找如何将它们分开并返回,但我没有运气。
有人可以帮忙吗?
顺便说一句,这是针对Java的。
编辑:不确定我是否以正确的方式完成了这项工作,但我最终得到了这个:
System.out.println("Please type in your first name.");
String firstName = fName.next();
String partFirstName = firstName.toUpperCase().substring(0,1);
String partFirstName2 = firstName.toLowerCase().substring(1);
String correctFirst = (partFirstName + partFirstName2);
答案 0 :(得分:3)
简单地在Java中,没有任何第三方库,您可以迭代分裂String
s数组的每个元素,然后执行:
Character.toUpperCase(user_input.charAt(0)) + user_input.substring(1).toLowerCase();
答案 1 :(得分:1)
我不知道这是否是您要找的,但您可以尝试以下方法:
编辑:感谢Bohemian在我的代码中指出了一个小错误。名称格式问题的最简单代码是Character.toUpperCase(input.charAt(0)) + input.substring(1).toLowerCase();
。这也是mhasen对他和波西米亚人的回报。下面包含代码段和所有内容。
import java.util.Scanner;
public class Test {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
String input = scan.nextLine();
String newInput = Character.toUpperCase(charAt(0))
+ input.substring(1).toLowerCase();
System.out.println();
System.out.println(newInput);
scan.close();
}
}
答案 2 :(得分:0)
您可以使用Apache Commons Lang库WordUtils.capitalize()
例如:WordUtils.capitalize("john")
将返回"John"
。
为了分割字符串,你可以使用String的split()方法:
String input = "jOhn,JOhn,jOHn";
String[] values = input.split(",");
值将是String的数组包含" jOhn"," JOhn"和" jOHn"