`
tangqs
  • 浏览: 18568 次
  • 性别: Icon_minigender_1
  • 来自: 上海
最近访客 更多访客>>
社区版块
存档分类
最新评论

第一章 Java初入门(4)

阅读更多

1.5 如何进行控制台的输入输出

在这一章最后,让我们看看如何做一些简单的输入输出操作。一个刚入门的Java程序员最该学什么?我的答案是输入与输出。我们可以想象一下,如果自己辛辛苦苦写出来的程序却不能输出任何内容,这会对我们幼小的心灵造成怎样的伤害?当然,大家学习Java的时候,别指望能像学习VB一样,一开始就能够创建一个挺漂亮的界面。学习Java可要经得住寂寞,先老老实实的从控制台程序(有时候,也叫做命令行方式)开始做起。在这一节,我们主要将讨论Java如何进行控制台的输入和输出。

首先让我们看看如何实现控制台的输出。如果大家还有印象的话,应该能记起我们的第一个Java程序就使用了System.out.println进行控制台的输出。其实除了这个方式之外,我们还可以使用System.out.print进行输出,这两种形式看上去只差了两个字母,他们有什么区别?使用System.out.println,在输出内容之后,还会再加上一个回车换行符,也就是说,当我下一次进行输出时,将会在下一行输出内容;而System.out.print不会在输出之后添加回车换行符。下面我们给出一个相关的例子。

//PrintTester.java

public class PrintTester {

    public static void main(String[] args) {

        System.out.println("***************");

        System.out.println("   Java欢迎你");

        System.out.println("***************");

        System.out.print("你好,");

        System.out.print("Java!");        

    }

}

这一段代码运行之后的结果如下:

***************

   Java欢迎你

***************

你好,Java!

学习或使用过C语言的人如果对printf还无法忘怀的话,JDK中同样提供了方法System.out.printf,有兴趣的可以查一下JDK的API文档。

接着我们学习如何进行控制台输入,在JDK5.0之前,我一直都用BufferedReader作为控制台的输入,不过现在JDK提供了Scanner类,可以更方便的进行控制台输入。Scanner类提供了一系列的方法可以比较方便的读取整数、浮点数以及字符串等数据。下面是一个有关于Scanner的例子。

//ScannerTester.java

import java.util.Scanner;

public class ScannerTester {

    public static void main(String[] args) {

        Scanner scanner = new Scanner(System.in);

        String str = scanner.next();

        System.out.println("你输入的是:" + str);

        int i = scanner.nextInt();

        System.out.println("你输入的整数是: " + i);

    }

}

初学者可能有几个看不太明白的地方,我在这里稍微解释一下。首先,如果需要用Scanner类的话,必须在源文件的开始处定义 import java.util.Scanner(我们将会在后面的章节中介绍import语句);其次,我们必须使用Scanner scanner = new Scanner(System.in)语句创建一个Scanner对象,特别要注意的是,要用System.in作为参数创建Scanner对象,我们将会在后面具体介绍构建器以及System.in。

当我们开始运行这个程序时,程序首先会等待用户输入一个字符串——我们假设用户输入了“Hello”,当用户输入完成后,程序将打印“你的输入是: Hello”的字样;然后程序又等待用户输入一个整数——假设用户输入了“100”,最后程序将输出“你输入的整数是100”。

除了上面介绍的两个方法next和nextInt之外,Scanner还提供了方法nextDouble用于输入double型数据;nextFloat输入float数据等等。不过对有的初学者来说,这个程序可能还有一些不了解,比如不明白String和int是什么东西,以及可能还缺少一些变量方面的知识,但是别太担心,先把这些问题记下来,我们会在后面向大家说明。

 

分享到:
评论
2 楼 tangqs 2008-10-09  
这应该算是我的。
1 楼 HOTi815 2008-10-08  
这是谁的书

相关推荐

Global site tag (gtag.js) - Google Analytics