显示用户输入的第一个字母

时间:2016-01-13 07:02:42

标签: java

例如,我有一个随机化的用户输入列表。用户输入的范围在1-10之间。然后将用户输入排入队列并出列以显示用户输入列表。

但是,我想使用用户输入来显示每个用户输入的第一个字母。我尝试创建一个名为name1的新变量来存储用户输入但由于name1变量为null而返回错误。

for(int i =1;i<=value ;i++){
    System.out.println("Enter name #" + i+":");
    String name = input.next();
    String name1 = name;
    myQueue.enqueue(name);   
 }
System.out.println("List of names: ");
for(int j=1; j <=value; j++){
    System.out.println(j+". " +(myQueue.dequeue()));

} 
System.out.println("Statistics:");
char firstletter = name1.charAt(0); //error: value is null 
System.out.println(firstletter); 

4 个答案:

答案 0 :(得分:2)

name1= name;

必须在循环之外

答案 1 :(得分:1)

希望这会对你有所帮助

SELECT 
    CASE
       WHEN capex_billofmaterialitem.decQuantity <> '0'
         THEN '0'
         ELSE capex_billofmaterialitem.decQuantity
    END AS decQuantity,
    capex_billofmaterialitem.*
FROM 
    capex_billofmaterialitem,
    capex_billofmaterial
WHERE 
    capex_billofmaterialitem.szbillofmaterialid = capex_billofmaterial.szbillofmaterialid
    AND capex_billofmaterial.szprojectcode = '" + szProjectCode + "'";

答案 2 :(得分:0)

我希望它可以帮到你:

for(int i = 1; i <= value; i++)
{
    System.out.println("Enter name #" + i + ":");
    myQueue.enqueue(input.next());   
}

System.out.println("List of names: ");
for(int j = 1; j <= value; j++)
{
    String name = (String) myQueue.dequeue(); //pop element
    System.out.println(j + ". " + name);
    myQueue.enqueue(name);
} 

System.out.println("Statistics: ");
for(int j = 1; j <= value; j++)
{
    String name = (String) myQueue.dequeue();
    System.out.println(name.charAt(0));
}

答案 3 :(得分:0)

我认为你在这里做的是在循环之外声明name1然后再次在循环内重新声明它。删除循环内的声明并改为编写name1 = name