1.根据你输出的语句:首行为文件名,"+"其余内容为文件内容,以空行结尾。按Ctrl+c组合键结束输入",你是想按Ctrl+c就退出程序结束输入,但是你的程序并没有定义当按下Ctrl+c键的响应。所以你一直输入内容是没办法结束程序的。你只有手动停止编译器停止程序。
成都创新互联专注于大悟企业网站建设,响应式网站建设,商城网站建设。大悟网站建设公司,为大悟等地区提供建站服务。全流程按需策划,专业设计,全程项目跟踪,成都创新互联专业和态度为您提供的服务
2.你没有指定fileName文件的类型,也没生成位置,那么在你对应的工程路径下生成一个缺省的文件,名字为你第一次输入的fileName,内容为第二次输入的内容,你可以用记事本打开,看到输入的内容。
程序没有错,只是没有完成你想要的功能而已!
可以使用java的Scanner类,常见的是用nextInt()输入一个整数,用next()输入一个字符串,下面是一个小的演示程序。
public class InputTest
{
public static void main(String[] args)
{
Scanner input = new Scanner(System.in);
System.out.println(input.nextInt());
System.out.println(input.next());
input.close();
}
}
程序开发过程中,需要从键盘获取输入值是常有的事,但Java它偏偏就没有像c语言给我们提供的scanf(),C++给我们提供的cin()获取键盘输入值的现成函数!Java没有提供这样的函数也不代表遇到这种情况我们就束手无策,请你看以下三种解决方法吧:
以下将列出几种方法:
方法一:从控制台接收一个字符,然后将其打印出来
public static void main(String [] args) throws IOException{
System.out.print(“Enter a Char:”);
char i = (char) System.in.read();
System.out.println(“your char is :”+i);
}
}
虽然此方式实现了从键盘获取输入的字符,但是System.out.read()只能针对一个字符的获取,同时,获取进来的变量的类型只能是char,当我们输入一个数字,希望得到的也是一个整型变量的时候,我们还得修改其中的变量类型,这样就显得比较麻烦。
方法二:从控制台接收一个字符串,然后将其打印出来。在这个题目中,我们需要用到BufferedReader类和InputStreamReader类
public static void main(String [] args) throws IOException{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String str = null;
System.out.println(“Enter your value:”);
str = br.readLine();
System.out.println(“your value is :”+str);
}
这样我们就能获取我们输入的字符串。
方法三:这种方法我认为是最简单,最强大的,就是用Scanner类
public static void main(String [] args) {
Scanner sc = new Scanner(System.in);
System.out.println(“请输入你的姓名:”);
String name = sc.nextLine();
System.out.println(“请输入你的年龄:”);
int age = sc.nextInt();
System.out.println(“请输入你的工资:”);
float salary = sc.nextFloat();
System.out.println(“你的信息如下:”);
System.out.println(“姓名:”+name+“\n”+“年龄:”+age+“\n”+“工资:”+salary);
}
你好,
假设是输入整数:
Scanner san = new Scanner(System.in); //声明输入变量san并初始化;
int i = san.nextInt(); //将输入的变量san的值赋给整数变量 i ;
System.out.println(i); //输出i 。
就是利用Scanner这个类。
希望可以帮助到你 ~O(∩_∩)O~
step1:新建一个演示类demo
step2:导入 包文件,在包名下,类名之上输入如下代码。
import java.util.Scanner;
step3:在类中的代码如下:
public static void main(String[] args) { //创建一个键盘录入对象input Scanner input = new Scanner(System.in); System.out.println("please input “学生姓名”"); String studentName = input.next().intern(); System.out.println("please input “科目名称”"); String subject = input.next().intern(); System.out.println("please input“科目成绩”"); double result = input.nextDouble(); //调用Student类的方法 Student stu = new Student(); stu.setStudentName(studentName); stu.setSubject(subject); stu.setResult(result); Student.getInformation(stu);}
step4:新建一个Student类,设置类的各个成员变量,创建一个学生个人信息的方法。如下:
public class Student { private String studentName; private String subject; private double result; private String eveluate; //创建一个信息输出方法 public static void getInformation(Student studentInformation) { System.out.println("学生个人信息"); //获取学生姓名返回的成员变量值 System.out.println("姓名:" + studentInformation.getStudentName()); //获取科目成员变量的返回值 System.out.println("科目:" + studentInformation.getSubject()); //获取成绩成员变量的返回值 System.out.println("成绩:" + studentInformation.getResult()); //获取等级成员变量的返回值 System.out.println("等级:" + studentInformation.getEveluate()); } //使用getXxx()和setXxx()对各个私有成员变量进行限定 //对学生姓名进行输入和输出的设置 public String getStudentName() { return this.studentName; } public void setStudentName(String studentName) { this.studentName = studentName; } //对成绩等级变量设置 public String getEveluate() { return this.eveluate; } public void setEveluate(String eveluate) { this.eveluate = eveluate; } //对科目成员变量进行设置 public String getSubject() { return this.subject; } public void setSubject(String subject) { this.subject = subject; } public double getResult() { return this.result; } //对成绩进行等级划分 public void setResult(double result) { if (result = 95) { this.result = result; this.eveluate = "A+"; } else if (result 90 result = 85) { this.result = result; this.eveluate = "A"; } else if (result = 80 result 85) { this.result = result; this.eveluate = "B+"; } else if (result = 75 result 80) { this.result = result; this.eveluate = "B"; } else if (result = 70 result 75) { this.result = result; this.eveluate = "C+"; } else if (result = 60 result 70) { this.result = result; this.eveluate = "C"; } else if (result = 50 result 60) { this.result = result; this.eveluate = "D"; } else { this.result = result; this.eveluate = "E"; } }}
运行结果1:
please input “学生姓名”
李小明
please input “科目名称”
数学
please input“科目成绩”
98
学生个人信息
姓名:李小明
科目:数学
成绩:98.0
等级:A+
运行结果2:
please input “学生姓名”
王强
please input “科目名称”
英语
please input“科目成绩”
52
学生个人信息
姓名:王强
科目:英语
成绩:52.0
等级:D