第四节 与电脑交流
现在我们我们的程序已经可以打印一些字符到屏幕了,但是我们并不满足,我们希望可以接受一些一些信息。并对我们发出的信息作出一些响应。本节就介绍和电脑交流的方法。
由于我们目前所编写的软件是基于命令行的软件,所以与程序交流的方式只有两种,用键盘向程序输入指令,与程序将响应输出到屏幕。
程序将信息输出到屏幕
系统带给我们一个很好用的对象用来将信息输出到屏幕,该对象就是Systen的out对象。我们可以使用该对象提供的System.out.println(String string)和System.out.print(String string)两个方法将一些信息输出到屏幕,它们的区别是println打印一行,既打印完后换行,而print则不换行。例如:
System.out.println("Hello Java!");
System.out.println("Hello World!");
System.out.print("Hello Java!");
System.out.print("Hello World!");
这是得到的结果将是如下的结果:
Hello Java!
Hello World!
Hello Java!HelloWorld!
out对象是提供标准输出的,除out对象外,系统还提供一个err对象,err对象也提供两个方法:System.err.print(String string)和System.err.println(String string)它们的区别与out对象的一样。err对象主要用来输出错误消息,在命令行中没有区别,在集成环境中,err输出的文字是红色的。用来表示发生错误。
程序从键盘接受消息
当然除了打印消息外,系统也提供了程序接受消息的Systen.in对象,不过该对象使用比较难,我们使用它给我门的另外一个比较方便的对象。该对象时对System.in的包装。
它的名字叫Scanner。Scanner是一个类(它的概念在后面介绍),Scanner的意思是,它是一个键盘扫描器,用来接收键盘输入。它的使用方式是,我们需要先获取一个对象。这部分无法理解的话,可到学习第二部分时再回来理解它。下面直接给出使用它的模板。
import java.util.Scanner;
public class HelloJava {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
// 这里写代码
scanner.close();
}
}
新的模板中增加了两行,主要为了获取scanner,第一行在学习了包的概念后讲解,第四行也是新添加的一行,在学习第二部分是讲解。而scanner.close()则需要到流的讲解出才能解释。
下面讲解怎么使用scanner来获取键盘输入。scanner提供了一个方法:scanner.nextLine(),通过使用这个方法,可以获取一次键盘输入。按enter结束。比如下面的程序:
import java.util.Scanner;
public class HelloJava {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
// 这里写代码
String string = scanner.nextLine();
System.out.println(string);
scanner.close();
}
}
这个程序运行后将等待输入,输入想要输入的文字后enter,程序将输出刚才输入的内容。
~完~
好的,有了和电脑交流之后,我们便可以写一个小游戏了。
有一个故事,说一个人教鹦鹉讲话:
跟我说:
——我是鹦鹉
——我是鹦鹉
——我会说话
——我会说话
——我会飞
——你吹牛
——呃
下面,我们就可以写这样的一个小程序:
import java.util.Scanner;
public class HelloJava {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
// 这里写代码
String string = scanner.nextLine();
System.out.println(string);
String string2 = scanner.nextLine();
System.out.println(string2);
String string3 = scanner.nextLine();
System.out.println("你吹牛!");
scanner.close();
}
}