三种方法分别如下:
方法一:从控制台接收一个字符,然后将其打印出来
import java.io.*;
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类
import java.io.*;
public static void main(String [] args) throws IOException{ 
    InputStreamReader isr = new InputStreamReader(System.in);
           BufferedReader br = new BufferedReader(isr); 
           String str = ""; 
           System.out.println("Enter your value:"); 
           str = br.readLine(); 
           System.out.println("your value is :"+str); 
}
这样我们就能获取我们输入的字符串。
 
方法三:这种方法我认为是最简单,最强大的,就是用Scanner类
import java.util.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类不管是对于字符串还是整型数据或者float类型的变量,只需做一点小小的改变,就能够实现功能。
最后小小的总结一下next()和nextLine()的区别:

在java中,next()方法是不接收空格的,在接收到有效数据前,所有的空格或者tab键等输入被忽略,若有有效数据,则遇到这些键退出。nextLine()可以接收空格或者tab键,其输入应该以enter键结束。

最新文章

  1. day10---multiprocess 多进程
  2. 【BZOJ 3527】【ZJOI 2014】力
  3. Delphi中限制文本框(TEdit)只能输入数字
  4. Python开发程序:简单主机批量管理工具
  5. Java工程师面试题,整理自网络与博主各种笔试面试,持续更新
  6. 浅谈js中的数据类型,使用typeof获取js数据类型
  7. ecshop 调用指定分类的推荐,热卖,新品
  8. 在安装MySQL Workbentch的时候出现如下问题,已经解决。
  9. 转载[POJ题型分类]
  10. Xcode的控制台调试命令
  11. (转)jquery的html,text,val
  12. 引入css外部样式表
  13. Mybatis分页插件PageHelper正确的用法(网上有2篇不够科学的文章)
  14. awk 工具简介NF-NR
  15. ASP.NET 依赖注入。
  16. mysql 拼接
  17. Android通过编译源代码提供系统服务-android学习之旅(85)
  18. DateTime时间格式转换为Unix时间戳格式
  19. VMware虚拟机中CentOS 7的硬盘空间扩容
  20. 常见IP端口

热门文章

  1. 用ActionController::Renderer的render方法渲染模版
  2. vue 基础(一)
  3. spring boot(八)RabbitMQ使用
  4. 6月16 ThinkPHP连接数据库及Model数据模型层--------查询及数据添加
  5. Oracle PL/SQL语言函数、匿名语句及循环
  6. 移动端页面利用好viewport,适配各种宽度屏幕
  7. PostgreSQL数据库单机扩展为流复制
  8. 【LeetCode】字符串匹配
  9. 基数排序模板[luogu 1177]
  10. C++ leetcode Longest Substring Without Repeating Characters