关于java的一个实际问题编程

public class AccountSetup {

/**
* @param args the command line arguments
*/
public static void main(String[] args) {
String username;
String password;
Scanner input =new Scanner(System.in);
username = input.nextLine();
input.close();
password = input.nextLine();
input.close();
/* prompts the user for a user name*/
System.out.print("Enter your username:");
System.out.print("Enter your password:");
username=username.toLowerCase();
password=password.toLowerCase();
System.out.println("your username:"+ username);
System.out.println("your password:"+ password);

老师要我们创建一个应用,这东西能够将用户名和密码转换为小写的。。。。然后老师说输出的效果是:

Enter a username :DESTRUCtor
Enter a password:PWNnoobs
your username is destructor and your password is pwnnoobs.
做了好久都不知道哪里做错了。。。要怎么改啊 谢谢大神 (我是国外教的,可能有一些概念没听懂)
之前我还做了一个给老师看结果来了这样一段话:
The code below makes it so that the user never has a choice in what they input. The code I gave you today will allow the user name and password to be chosen by whomever is using the program. Also, the code below will not produce the same output as the output on the sheet I gave in class today.

你出错的有四个地方:

这是错误截图

这是修改后的代码

import java.util.Scanner;

public class AccountSetup{

public static void main(String[] args) {

        String username;

        String password;

        Scanner input =new Scanner(System.in);

        username = input.nextLine();

    //缓存username

        String username1=username;

        password = input.nextLine();

        String password1=password;

       // 缓存password

        input.close();

        /* prompts the user for a user name*/

         username=username.toUpperCase();

         password=password.toUpperCase();         

         System.out.println("Enter your username:"+username);

         System.out.println("Enter your password:"+password);

        System.out.print("your username:"+ username1);

        System.out.println(" and your password:"+ password1);

}

}

后台输入不懂再问我

追问

我用的是netbeans。。

然后scanner input 那有黄线,最后一直run不出结果。。。

追答

运行代码后,这里有个光标,在这里输入username和password,注意换行,输入后,enter就可输出来了

这是我的输出

温馨提示:内容为网友见解,仅供参考
第1个回答  2015-09-29
Scanner input =new Scanner(System.in);
username = input.nextLine();
input.close(); //这里错误 输入流在这里关闭了,后边的input.nextLine();就 不能再读取出入的字符了。把这句去掉试试。应该就好了。
password = input.nextLine();
input.close();
第2个回答  2015-09-29
// 回答完毕,采纳即可

import java.util.Scanner;

public class AccountSetup
{
public static void main(String[] args)
{
String username;
String password;
Scanner input = new Scanner(System.in);
System.out.print("Enter your username:");
username = input.nextLine();
System.out.print("Enter your password:");
password = input.nextLine();
input.close();
username = username.toLowerCase();
password = password.toLowerCase();
System.out.println("your username:" + username);
System.out.println("your password:" + password);
}
}

追问

这个不是我的那个吗??

追答

你都试试,就说是你的那个?我可改了的

你如果看一眼就知道,那你就不会来这里提问了,你说是吧

追问

你的scanner input 那的input 下有黄线。。。。

编写JAVA程序遇到的问题汇总(二)
在处理JAVA编程中,遇到的一个典型问题是关于Elasticsearch的Bean冲突,当你试图创建'discussPostRepository'时,收到了如下的错误信息:Caused by: org.springframework.beans.factory.support.BeanDefinitionOverrideException。问题在于,由于第三方Spring库,可能出现了名为'discussPostRepository'的Bean定义冲突,...

java趣味编程实例?
System.out.print("输入第"+(i+1)+"个数:"); number=input.nextInt(); if(maxnumber) max=number; i++; }while(i10); System.out.println("最大值:"+max); } } 4、编写程序,计算从1到100之间的奇数之和。 (1)for循环 publicclassFour1{ publicstaticvoidmain(String[]args){ intsum=0; for...

Java 编程问题 求大神写完整过程 谢谢~
我简单写了一个例子,可以参考下:import java.util.Arrays;public class IntegerArrayMoveExample {public static void main(String[] args) {\/\/ testint[] arr={1,2,3,4,5,6,7,8,9,0};arrayMove(arr,5);}\/** * 数组向右移动m位 * @param arr 原数组 * @param position 向右移动的...

关于java编程出现的一点小问题
1. about变量的声明编译器看不到;2. JOptionPane.showMessageDialog()的调用,参数类型不匹配;3. 监听器没有被添加到about按钮中。你应该将about变量导出为类变量(而非现在的局部变量),如:import java.awt.*;import javax.swing.*;import java.awt.event.*;import javax.swing.border.*;public...

JAVA编程问题求大神帮忙看看解答谢谢!
for(String strone : str){ System.out.println(strone);} } 以上我的代码供参考 你的问题:1 、定义的数组类型有问题 讲解:字符数组用该用char 或者String 你这个由于是中文字符串,所以用String char 和String 定义是需要引号引起来,2 、java中,结束一段表达式的时候要用英文的分号结...

java编程问题
由于代码很短,我没分成多个文件,都写在一起了。。这里的MsgQueue就用java自带的ArrayBlockingQueue了,如果需要自己实现的话,参考下他的源代码就可以了~还有我觉得生产者是1秒生产一个,而消费者是不断的查询,不太可能让队列满的吧。。public class TestMain { public static void main(String[] ...

关于java编程的问题:一个类调用另一个类中构造方法中所定义的参数。
关于java编程的问题:一个类调用另一个类中构造方法中所定义的参数。 类中构造方法中所定义的参数一般是属于类的属性,都是定义为private的,所以无法直接获取或者操作类的属性,但是可以通过类的get和set方法,间接获取和操作类的属性。以下为set和get方法示范:public int getA() { return a;} pub...

JAVA编程问题?
1.在Java中,public、static和final是修饰符,用于定义类、方法和变量的特性。在声明一个List<User>类型的变量时,加上这些修饰符可以具有以下含义:public:表示该变量可以在其他类中访问。static:表示该变量是一个静态变量,可以在没有创建对象的情况下访问。final:表示该变量是一个常量,一旦被赋值后...

一个简单的JAVA编程题,跪求急等,明天交作业。
import java.text.DecimalFormat;public class PetrolCalc { private double normalPetrolRate;\/\/在普通公路上消耗汽油用升每100公里表示 private double highPetrolRate;\/\/在高速公路上消耗汽油用升每100公里表示 private double normalDistance;\/\/在普通公路行驶的路程用公里来计算 private double highDistance...

一个简单的JAVA编程题 求代码咋写?
public static void main(String args[]) {int num=0;\/\/保存总成绩for(int i=1;i<=100;i++){int r=new Random().nextInt(100);num+=r;System.out.println("第"+i+"个同学成绩:"+r);}System.out.println("平均成绩:"+num\/100);} ...

相似回答