夜半歌声丶 2017-11-18 08:18 采纳率: 100%
浏览 1944
已采纳

for循环里面的第一条输入语句不能被执行 怎么回事啊

package Person;

import java.util.Scanner;

public class Test {

public 
public static void main(String[] args) {
    // TODO 自动生成的方法存根
    Scanner in=new Scanner(System.in);
    int n=in.nextInt(),s=0,e=0,r=0;
    String[] name=new String[n],sex=new String[n],job=new String[n];
    int[] id=new int[n],money=new int[n];
    Person[] person=new Person[n];
    System.out.println("请按姓名,性别,工作,身份证,月收入分别输入要输入的个人信息:");
    for(int i=0;i<n;i++)
    {
        name[i]=in.nextLine();
        sex[i]=in.nextLine();
        job[i]=in.nextLine();
        id[i]=in.nextInt();
        money[i]=in.nextInt();
        person[i]=new Person(name[i],sex[i],job[i],id[i]);
        if(job[i]=="student")
            s++;
        else if(job[i]=="employee")
            e++;
        else
            r++;
    }
    Student[] student=new Student[s];
    int s1=0;
    for(int i=0;i<n;i++)
    {
        if(job[i]=="student")
        {
            student[s1]=new Student(name[i],sex[i],job[i],id[i]);
            s1++;
        }
    }
    Employee[] employee=new Employee[e];int j1=0;
    for(int i=0;i<n;i++)
    {
        if(job[i]=="employee")
        {
            employee[j1]=new Employee(name[i],sex[i],job[i],id[i],money[i]);
            j1++;
        }
    }
    Retired[] retired=new Retired[r];int r1=0;
    for(int i=0;i<n;i++)
    {
        if(job[i]=="retired")
        {
            retired[r1]=new Retired(name[i],sex[i],job[i],id[i],money[i]);
            r1++;
            retired[r1].introduceself();
        }
    }
    in.close();
}

}

  • 写回答

2条回答 默认 最新

  • danielinbiti 2017-11-18 09:19
    关注
     因为你int n=in.nextInt(),s=0,e=0,r=0;执行这句后scanner没有换行,所以下一个nextLine读取的是这个整形所在的行。
     多加一个nextLine,for循环就能正常了
    int n=in.nextInt(),s=0,e=0,r=0;
     in.nextLine();
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 如何在scanpy上做差异基因和通路富集?
  • ¥20 关于#硬件工程#的问题,请各位专家解答!
  • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 報錯:Person is not mapped,如何解決?
  • ¥15 c++头文件不能识别CDialog