一,利用 Scanner 实现从键盘读入integer或float 型数据

1 import java.util.*;2 public classtest {3 public static voidmain(String args[])4 {5 Scanner in=new Scanner(System.in); //使用Scanner类定义对象

6 System.out.println("please input a float number");7 float a=in.nextFloat(); //接收float型数据

8 System.out.println(a);9 System.out.println("please input a integer number");10 int b=in.nextInt(); //接收整形数据

11 System.out.println(b);12 }13 }

二,利用 BufferedReader实现从键盘读入字符串并写进文件abc.txt中

1 import java.io.*;2 public classTest3 {4 public static void main(String[] args) throwsIOException5 {6 BufferedReader buf = new BufferedReader (newInputStreamReader(System.in));7 BufferedWriter buff = new BufferedWriter(new FileWriter("abc.txt"));8 String str =buf.readLine();9 while(!str.equals("exit"))10 {11 buff.write(str);12 buff.newLine();13 str =buf.readLine();14 }15 buf.close();16 buff.close();17 }18 }

关于JDK1.5 Scanner类的说明

Scanner是SDK1.5新增的一个类,可是使用该类创建一个对象.

Scanner reader=new Scanner(System.in);

然后reader对象调用下列方法(函数),读取用户在命令行输入的各种数据类型:

next.Byte(),nextDouble(),nextFloat,nextInt(),nextLine(),nextLong(),nextShot()

使用nextLine()方法输入行中可能包含空格.如果读取的是一个单词,则可调用

.next()方法

三、Scanner和BufferedReader的区别

在命令行模式下要输入数据至程序中时,我们可以使用标准输入串对象System.in.但是,我们并不经常直接使用它,因为System.in提供的 read方法每次只能读取一个字节的数据,而我们平时所应用的通常是读取一个字符串或者是一个数字,所以read方法所以提供的功能,对我们来说并没有太大的用处.

在Java SE 6中,可以使用Scanner类取得用户的输入,Scanner类位于java.util包中,如果你要使用Scanner取得用户输入的话,要加上 import java.util.Scanner;这条语句.import的功能是告诉编译器,你将使用java.util包中的Scanner类.

1 importjava.util.Scanner;2 public classTest3 {4 public static voidmain(String[] args)5 {6 Scanner scan = newScanner(System.in);7 System.out.println("请输入一个字符串:");8 System.out.println("您输入的字符串是:" +scan.next());9 }10 }

运行上面的程序,你将会看到你输入的字符串将在下面原样显示出来.

我们来看看这个程序中每条语句的意思:

new是创建一个对象,程序中new的意思是创建了一个Scanner类的对象scan.但是在创建Scanner类的对象时,需要用System.in 作为它的参数,也可以将Scanner看作是System.in对象的支持者,System.in取得用户输入的内容后,交给Scanner来作一些处理.

Scanner类中提供了多个方法:

next():取得一个字符串;

nextInt():将取得的字符串转换成int类型的整数;

nextFloat():将取得的字符串转换成float型;

nextBoolean():将取得的字符串转换成boolean型;

用Scanner获得用户的输入非常的方便,但是Scanner取得输入的依据是空格符,包括空格键,Tab键和Enter键.当按下这其中的任一键时,Scanner就会返回下一个输入. 当你输入的内容中间包括空格时,显然,使用Scanner就不能完整的获得你输入的字符串.这时候我们可以考虑使用BufferedReader类取得输入.其实在Java SE 1.4及以前的版本中,尚没有提供Scanner方法,我们获得输入时也是使用BufferReader的.

BufferedReader类位于java.io包中,所以要使用这个类,就要引入java.io这个包:import java.io.BufferedReader.

使用BufferedReader对象的readLine()方法必须处理java.io.IOException异常(Exception).

使用BufferedReader来取得输入,理解起来要复杂得多.但是使用这个方法是固定的,每次使用前先如法炮制就可以了.

BufferedReader buffer = new BufferedReader(new InputStreamReader(System.in));

String text = buffer.readLine();

readLine()方法会返回用户在按下Enter键之前的所有字符输入,不包括最后按下的Enter返回字符.

1 importjava.io.BufferedReader;2 importjava.io.IOException;3 importjava.io.InputStreamReader;4 public classTestBufferedReader5 {6 public static void main(String[] args) throwsIOException7 {8 BufferedReader buffer = new BufferedReader(newInputStreamReader(System.in));9 System.out.println("请输入一串字符串");10 String text =buffer.readLine();11 System.out.println("您输入的字符串是:" +text);12 }13 }

四,利用 System.in.read 实现从键盘读入char 型数据

1 System.out.println("please input a char");2 char c=(char)System.in.read();3 System.out.println(c);

java输入一个字符串_在java中如何用键盘输入一个数,字符,字符串相关推荐

  1. java数组输入一个实数_用java!!输入五个数,保存到一个数组中,然后将... C语言,编写一个程序,从键盘输入5个数,算出总和......

    导航:网站首页 > 用java!!输入五个数,保存到一个数组中,然后将... C语言,编写一个程序,从键盘输入5个数,算出总和... 用java!!输入五个数,保存到一个数组中,然后将... C ...

  2. java写一个搜索引擎_搜索引擎—-Java实现一个简单的网络爬虫

    Java实现一个简单的爬虫程序. package SearchCrawler;import java.util.*;import java.net.*;import java.io.*;import ...

  3. 用java写一个日历_使用JAVA写一个简单的日历

    JAVA写一个简单的日历 import java.text.DateFormat; import java.text.ParseException; import java.text.SimpleDa ...

  4. vue输入框输入触发事件_.vue文件中监听input输入事件oninput详解

    .vue文件其实是一个组件,关于它的说明我之前也写过一篇文章,地址:.vue文件,今天这篇文章要讲的是.vue文件中监听input的输入值变化事件.需求是这页面中,改变input的值,就调用一个事件, ...

  5. java编一个漏斗_在java中编一个可以输出星号金字形状的程序,挂上详解!重谢...

    展开全部 用星号来打印金字塔,有一62616964757a686964616fe4b893e5b19e31333332643331定的规律: 1.中心对齐: 2.从上往下,每一层的星星个数都是奇数,而 ...

  6. 用java编写一个计算器_用java程序编写一个计算器

    展开全部 给你一个参考,希望不62616964757a686964616fe58685e5aeb931333330343261要被百度吞了当晚餐 import java.awt.BorderLayou ...

  7. java 任意数平均值_【编程题】通过键盘输入三个任意的数字,计算三个值的平均值,并输出结果。...

    [单选题]对放大电路测试NPN型硅管测得Ube>0,Ubc>0,Uce>0 [简答题]Even ordinary men understand now that the univer ...

  8. Java写一个快速排序_快速排序java实现

    1.快速排序的思想 快速排序属于交换排序,是冒泡排序的升降版.相对于冒泡排序而言,快速排序增大了记录比较和移动的距离,将关键字较大的记录直接移动到后面,将关键字较小的记录直接移动到前面:不再是相邻两个 ...

  9. 用java建一个类_利用JAVA创建一个类。

    慕姐829404 123456789101112131415package com.test;public class TestTrapezia   {    public static void m ...

最新文章

  1. BZOJ1503(Splay)
  2. 【CodeForces - 1042C】Array Product(思维,有坑细节)
  3. js逻辑训练题_七彩思维逻辑魔盘:全方面锻炼孩子的数学与逻辑思维
  4. 二值化图像是什么?图像如何二值化?
  5. RestTemplate 发送 get 请求使用误区 多值为null
  6. Python部分输出
  7. 英超俱乐部面临网络威胁,球队一起训练防御网络攻击
  8. 西部数码虚拟服务器备案,关于西部数码主机启用备案码进行备案的通知
  9. java应聘面试自我介绍范文
  10. 学生的知识管理工具:有道云笔记、幕布和 Effie
  11. JavaScript反爬之哈希算法
  12. 简洁、快速的JavaScript框架/库:jQuery
  13. html 网页 简体中文 繁体中文 英文自适应,css页面字体替换源代码和页面显示不一样问题解决...
  14. 重新回到Fcitx5的怀抱
  15. CSS综合案例-品优购电商04
  16. 基于Mini无人机与改进损失函数的YOLO V3的大豆幼苗自动计数系统V1.0-使用手册
  17. 04-C语言如何返回两个甚至多个值?
  18. s15.一键安装java脚本
  19. android 编译汇编,【隋义】1.安卓图文教程之安卓环境下汇编学习
  20. BZOJ[2733][HNOI2012]永无乡 Splay启发式合并

热门文章

  1. 2022年执法资格交通执法考试多选题专项训练题及答案
  2. webrtc-kurento
  3. 绝地求生刺激战场服务器维护中怎么办,绝地求生刺激战场更新后进不去怎么办 游戏更新失败解决方法详解...
  4. 哪些人群在报考浙大工程管理硕士(MEM)?
  5. ajax设置cookie属性,jQuery AJAX响应设置Cookie标头
  6. 阿里音乐流行趋势预测大赛一起做-(1)介绍
  7. 用 Python+openpose 实现抖音尬舞机 1
  8. 一个实用的工具--PdmReader
  9. 宠物医院微信小程序的开发与实现
  10. aso实战浅析,让流量翻倍