浅谈在 java 中如何从控制台输入一个字符

一、背景介绍

在 leetcode 上练习算法题时,题目要求输入一个浮点型数值以及一个字符。当我书写Scanner sc = new Scanner(System.in)后,打算通过sc.nextXX实现从控制台输入一个字符时,突然意识到原来Java语法中的Scanner类并没有直接定义读取 char 的方法。由于之前也并没有遇到过需要从控制台输入一个字符的需求场景,因此此时就对如何输入一个字符的问题绞劲脑汁,终于整理出了几种方法,实现从控制台输入字符。

二、控制台输入字符的3种方法

2.1 通过获取字符串间接获取字符

1、使用 Scanner 类 中的 next()/nextLine() 方法,获取到从控制台输入的字符串。

2、字符串就是由一个个的字符组成,因此此时可以通过charAt(0)的方法,获取到字符串里的首元素,即一个字符。此时就可以实现从控制台输入一个字符的需求了。

3、代码展示:

Scanner sc = new Scanner(System.in);
char ch = sc.next().charAt(0);

2.2 通过将字符串转成字符数组后间接获取字符

1、还是使用 Scanner 类中的 next()/nextLine() 方法获取到字符串,再通过toCharArray()方法将字符串转化成字符数组,然后获取到字符数组的首元素:toCharArray()[0],即实现从控制台输入一个字符的需求。

2、代码展示:

Scanner sc = new Scanner(System.in);
char ch = sc.next().toCharArray()[0];

2.3 通过字符串直接获取字符

1、还是使用 Scanner 类中的 next()/nextLine() 方法获取到字符串,此时我们只输入一个字符作为字符串也可以。

Scanner sc = new Scanner(System.in);
String ch = sc.next();
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值