通过Scanner从控制台获取数据
----------siwuxie095
Scanner类用于扫描从控制台输入的数据,可以接收字符串和基本数据类型的数据
Scanner类位于 java.util.Scanner 包中
Scanner类的常用方法:
(1)String next();
作用:接收控制台输入的一个字符串「以空格或回车作为一次数据
输入的结束,因此 next() 方法不能把空格作为字符串接收」
(2)String nextLine();
作用:接收控制台输入的一个字符串「以回车作为一次数据输入
的结束,因此 nextLine() 方法可以接收空格作为字符串的一部分」
(3)int nexInt();
作用:接收控制台输入的一个int类型的数据
(4)double nextDouble();
作用:接收控制台输入的一个double类型的数据
(5)boolean nextBoolean();
作用:接收控制台输入的一个boolean类型的数据
(6)输入char类型的数据
Scanner类没有提供直接输入char类型的方法,可以通过 charAt()
方法从 next() 或 nextLine() 获取输入的字符「取巧之处:用 next()
或 nextLine() 获取控制台输入的字符串后,调用 String类中的charAt()
方法:从字符串中取出一个字符,At 即该字符在字符串中的位置,直接
调用 next().charAt() 即可」
char String.charAt(int index);
作用:从字符串中获取指定下标的字符,下标从 0 开始
通过Scanner从控制台接收数据的步骤:
(1)创建Scanner类的一个对象
如:Scanner scanner=new Scanner(System.in);
〔System.in 参数用来指定 Scanner 接收控制台输入的数据〕
注意:用Scanner类型声明的引用变量 scanner 位于栈空间,
new出来的对象在堆空间,因此 scanner 中存放的是堆空间中
该对象的地址
(2)通过 scanner 调用next()等方法,接收控制台输入的数据
如:System.out.println("姓名:");
String name=scanner.next();
如:

代码:
|
package com.siwuxie095.test; import java.util.Scanner; public class Test15 { public static void main(String[] args) { Scanner scanner=new Scanner(System.in); System.out.println("姓名:"); String name=scanner.next(); System.out.println("性别:"); char sex=scanner.next().charAt(0); System.out.println("年龄:"); int age=scanner.nextInt(); System.out.println("身高:"); double height=scanner.nextDouble(); System.out.println("性格:"); String type=scanner.next(); System.out.println("嗨,大家好,我叫"+name+",身高"+height+"米,今年"+age+"岁,我是一个"+type+sex+"士"); } } |
Eclipse中:

运行一览:
〔建议:当输入中文时,和Eclipse有一定的冲突,尽量避免直接
在控制台输入中文,可以在其他地方写上后,复制粘贴〕

【made by siwuxie095】
通过Scanner从控制台获取数据的更多相关文章
- Scanner对象及其获取数据出现小问题和解决方案
Scanner类简介: Java 5添加了java.util.Scanner类,我们可以通过Scanner类来获取用户输入.它是以前的StringTokenizer和Matcher类之间的某种结合.由 ...
- 利用location.hash+iframe跨域获取数据详解
前言 如果看懂了前文利用window.name+iframe跨域获取数据,那么此文也就很好理解了.一样都是动态插入一个iframe,然后把iframe的src指向服务端地址,而服务端同样都是输出一段j ...
- 通过args数组获取数据
----------siwuxie095 通过 main 方法的 args数组 可以从控制台获取一组字符串数据 如: package com.s ...
- Java通过 Scanner 类来获取用户的输入
通过 Scanner 类来获取用户的输入. import java.util.Scanner; Scanner s = new Scanner(System.in);// 从键盘接收数据 Syste ...
- 08-Flutter移动电商实战-dio基础_伪造请求头获取数据
在很多时候,后端为了安全都会有一些请求头的限制,只有请求头对了,才能正确返回数据.这虽然限制了一些人恶意请求数据,但是对于我们聪明的程序员来说,就是形同虚设.这篇文章就以极客时间 为例,讲一下通过伪造 ...
- Flutter dio伪造请求头获取数据
在很多时候,后端为了安全都会有一些请求头的限制,只有请求头对了,才能正确返回数据.这虽然限制了一些人恶意请求数据,但是对于我们聪明的程序员来说,就是形同虚设.下面就以极客时间为例,讲一下通过伪造请求头 ...
- Flutter移动电商实战 --(8)dio基础_伪造请求头获取数据
在很多时候,后端为了安全都会有一些请求头的限制,只有请求头对了,才能正确返回数据.这虽然限制了一些人恶意请求数据,但是对于我们聪明的程序员来说,就是形同虚设.这篇文章就以极客时间 为例,讲一下通过伪造 ...
- datatables异步获取数据、简单实用
IKC项目总结 一.认证难题管理模块 1. 如何使用datatables进行获取数据内容 datatables简介:Datatables是一款jquery表格插件.它是一个高度灵活的工具,可以将任何H ...
- 在ASP.NET Core中用HttpClient(一)——获取数据和内容
在本文中,我们将学习如何在ASP.NET Core中集成和使用HttpClient.在学习不同HttpClient功能的同时使用Web API的资源.如何从Web API获取数据,以及如何直接使用Ht ...
随机推荐
- php基础语法(文件加载和错误)
文件加载 有4个文件加载的语法形式(注意,不是函数): include, include_once, require, require_once; 他们的本质是一样的,都是用于加载/引入/包含/载 ...
- Hadoop MapReduce 操作 统计词频
1.准备文件并设置编码格式为UTF-8并上传Linux 2.新建一个Java Project 3.导入jar 4.编写Map()和Reduce() 5.将代码输出成jar 6.在linux中启动hdf ...
- Maven使用中的常见问题整理
1.更新eclipse的classpath加入新依赖 1.在dependencyManagement里面加入包括版本在内的依赖信息,如: <dependency> <groupId ...
- CentOS6.8编译安装LAMP
CentOS6.8编译安装Apache2.4.25.MySQL5.7.16.PHP5.6.29 初始化 #固定IP vi /etc/sysconfig/network-scripts/ifcfg-et ...
- 【学习记录】二分查找的C++实现,代码逐步优化
二分查找的思想很简单,它是针对于有序数组的,相当于数组(设为int a[N])排成一颗二叉平衡树(左子节点<=父节点<=右子节点),然后从根节点(对应数组下标a[N/2])开始判断,若值& ...
- eclipse和myeclipse的he user operation is wating问题
近做了一个MyEclipse项目,但是没开始多久就发现了这个问题:只要文件被修改过,不论多小的修改,保存的时候都会跳出一个框框,里面写着the user operation is wating.... ...
- [转]Jsp 映射
<servlet> <servlet-name>SimpleJspServlet</servlet-name> <jsp-file>/jsp/simpl ...
- Dev使用技巧汇总
C# XtraGrid的行指示器(RowIndicator)行号以及图标设置 参考网址:https://www.cnblogs.com/xuliangxing/p/6775438.html DateE ...
- 经典CNN模型计算量与内存需求分析
表1 CNN经典模型的内存,计算量和参数数量对比 AlexNet VGG16 Inception-v3 模型内存(MB) >200 >500 90-100 参数(百万) 60 138 23 ...
- opennebula onenebula
http://www.eucalyptus.com/blog/2013/01/07/opennebula-38-%E2%80%94-%E7%9B%91%E6%8E%A7 [云监控] http://ww ...