2013-10-29 28 views
1

这里是我的代码: 进口java.util.Scanner的;如何利用Java中你的名字的第一个字母?

class namedisplay { 
public static void main(String args[]){ 
    Scanner input = new Scanner(System.in); 

    System.out.println("Enter your name: "); 
    String name = input.nextLine(); 

    String capital1 = name.substring(0).toUpperCase(); 
    String capital2 = name.substring(5).toUpperCase(); 

    System.out.println(capital1+capital2); 



} 
} 

程序输出: 输入您的姓名: 安娜·李 ANNA LEELEE

我想节目做的是利用只有第一个名字和姓氏的第一个字母,例如Anna Lee。

回答

1
System.out.println("Enter your name: "); 
String name = input.nextLine(); 

String newName = ""; 

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

System.out.println(newName); 

要获得第一个字母并大写,请使用此name.charAt(0).toUpperCase();。 然后添加到newName

然后要其余字母加上从namenewName。你这样做,通过添加name

name.substring(1, name.length()); // 1 mean the substring will start at the 
            // second letter and name.length means the 
            // substring ends with the last letter 
+0

它说一个的substring“不能调用toUpperCase()的基本类型char”,我应该怎么办呢? – name123

+0

获取子串,而不是字符内:'name.substring(0,1);' –

相关问题