public void open() //.用户开户
{
System.out.println("输入账户类型 , 0 表示储蓄账户, 1 表示信用账户 ");
leixing = sc.nextInt();
if ((leixing <= 0) & (leixing >= 2)) {
System.out.println("输入错误");
} else {
if (leixing == 0) {
a = new SavingAccount();
for (int i = 0; i < 5; i++) {
System.out.println("请输入密码");
int mima = sc.nextInt();
System.out.println("请在输入密码");
int mima1 = sc.nextInt();
if (mima == mima1) {
a.setPassword(mima1);
break;
} else if (i >= 3) {
System.out.println("你已经达到输入上限..系统自动退出!");
sc.close();
break;
} else {
System.out.println("两次密码不一样 .. 请重新输入");
}
}
System.out.println("请输入姓名"); //为什么到里这里的时候 这句输出后就不让你输入而是直接执行下面 输入身份证呢啊??????
String xingming = sc.nextLine();
a.setName(xingming);
System.out.println("请输入身份证号码");
String shenfen = sc.nextLine();
a.setPersonId(shenfen);
System.out.println("请输入邮箱");
String youxiang = sc.nextLine();
a.setEmail(youxiang);
System.out.println(this);
huanying();
{
System.out.println("输入账户类型 , 0 表示储蓄账户, 1 表示信用账户 ");
leixing = sc.nextInt();
if ((leixing <= 0) & (leixing >= 2)) {
System.out.println("输入错误");
} else {
if (leixing == 0) {
a = new SavingAccount();
for (int i = 0; i < 5; i++) {
System.out.println("请输入密码");
int mima = sc.nextInt();
System.out.println("请在输入密码");
int mima1 = sc.nextInt();
if (mima == mima1) {
a.setPassword(mima1);
break;
} else if (i >= 3) {
System.out.println("你已经达到输入上限..系统自动退出!");
sc.close();
break;
} else {
System.out.println("两次密码不一样 .. 请重新输入");
}
}
System.out.println("请输入姓名"); //为什么到里这里的时候 这句输出后就不让你输入而是直接执行下面 输入身份证呢啊??????
String xingming = sc.nextLine();
a.setName(xingming);
System.out.println("请输入身份证号码");
String shenfen = sc.nextLine();
a.setPersonId(shenfen);
System.out.println("请输入邮箱");
String youxiang = sc.nextLine();
a.setEmail(youxiang);
System.out.println(this);
huanying();
解决方案 »
- Object与接口的关系,求解
- PreparedStatement查询与sql语句不一致?
- 如何动态改变组件大小
- HttpUrlConnection的getInputStream 和getOutputStream是什么意思
- 关于java函数取模 ============================================满分====在线等待
- 问个问题^_^
- 请教一个java和sql server连接问题?
- java 中有关向量的成员变量的引用问题-各位提提建议
- 菜鸟再次提问!!!
- 那有jbuild电子书下载!有分的!
- 使用poi插入图片时报错
- 运行一个桌面的程序出现的异常,大家帮忙看看有没有好的解决方案
可能这句最后有个换行符,nextLine捕捉到的是换行符,你把这句改为
System.out.print("请输入姓名");
试一下
// 试下
try {
System.out.println("请输入姓名");
if (sc.available() > 0) {//清除缓存
sc.skipBytes(sc.available());
//或者 sc.skip(sc.available());
}
} catch (IOException ex) {
Logger.getLogger(Base.class.getName()).log(Level.SEVERE, null, ex);
}
以下是nextline的说明。
此扫描器执行当前行,并返回跳过的输入信息。 此方法返回当前行的其余部分,不包括结尾处的行分隔符。当前位置移至下一行的行首。
因为此方法会继续在输入信息中查找行分隔符,所以如果没有行分隔符,它可能会缓冲所有输入信息,并查找要跳过的行。
nextline()
这两个有什么区别呢??
用法有什么不同呢??
里面有详细介绍