一个编程小白的Java战役

——太原理工大学机器人团队学习打卡day4

啦啦啦,第四天了,坚持就是胜利。今天,我们来学习一下程序中进行输入与输出(总算是开始整军备战了)。

1、输入与输出

  • 应用程序(Java Application)的输入与输出可以是文本界面,也可以是图形界面。
  • 小程序(Java Applet)则只能是图形界面。
  • 每种界面都可以有输入与输出。

2、文本界面(也叫控制台界面)的输入与输出

一个编程小白的Java战役(4)

输入

  • 使用nextInt()来表示我们得到一个整数。
  • 使用nextDouble()来表示我们得到一个实数。
  • 使用next()来得到下一个文本,也就是文本单词

注意:Scanner scanner=new Scanner(System.in)写法固定。

输出

我们使用System.out.print输出,当然,还有System.out.println和System.out.printf两种。他的写法和C语言有所相似,例如%d表示这是一个十进制整数

是不是很简单呐,但是啊,这是进化后的方法,只有JDK1.5以后才能用。那么在JDK1.5之前,我们是如何进行文本界面的输入与输出的呢。

原始时代

一个编程小白的Java战役(4)
我们要用到java.io这个包,就是输入输出(input、output)这个包,平时我们都叫import。用到的类则主要是System.in.read()或System.out.print()。但是read得到的仅仅是我们当前输入段的一个字符,我们要用强制类型转换来把它转化成一个字符,这样我们才能进一步使用,例如把它显示出来。

注意:要写try{}catch用来试图读入,因为读入过程可能会发生异常,那么就需要catch这个异常(io异常)(这算什么,军法官?用来逮人的)

就算是如此复杂,也只能得到一个字符。一行字符的获得又更加复杂了。
一个编程小白的Java战役(4)
我们需要将System.in封装成BufferedReader,用来读一行字符。

BufferedReader有一个功能叫readLine,可以一下读一行,并放到一个字符串中,我们就可以进一步处理。

我们在输入输出数字时,用Integer.parseInt()把字符串解析成一个整数,或者用Double.parseDouble()把字符串解析成一个实数。

是不是很复杂呢,还是新时代的好用吧。但是也不能忽略它们,现在还是有很多地方在用。

3、图形界面的输入与输出

现在是21世纪,人们都习惯了图形界面,不是每个人都能对着一串串的代码(文本界面)看好几天的。因此,学会如何在图形界面进行输入和输出必不可少。
一个编程小白的Java战役(4)

Java Application图形界面输入与输出

一个编程小白的Java战役(4)
创建一个带框架的窗口Frame来承载文本框、按钮、标签等工具

建议用extends来扩展系统页面,再根据我们需要来加入相应的东西。

例如:
一个编程小白的Java战役(4)
事件处理还可以进行简写:
一个编程小白的Java战役(4)
这样是不是简单多了>-<

4、Applet输入输出

因为Applet本身就是图形用户界面,所以它的写法和我们刚才的JFrame很相似。
一个编程小白的Java战役(4)
我们可以看到,它们的相似度非常高 ,那么我们是否可以写一个两者通用的程序呢。

5、同时作为Application和Applet的程序

答案自然是肯定的。只要满足以下三个条件,就可以做到兼容。
一个编程小白的Java战役(4)
当兼容时,我们可以有两种方法来运行它。既可以把它看成普通应用程序,也可以把它当做小程序来运行。

6、今日小结

今天主要介绍了Java在文本界面和图形界面的输入与输出,收获很大。(当然,最大的收获是我做游戏脚本之心不死,今天的程序示例让我觉得有了框架窗口,游戏脚本不是梦)明天继续。

相关文章: