import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.Scanner; public class GetChar {
public static void main(String[] args)throws Exception {
//通过扫描类输入
Scanner in = new Scanner(System.in);
char getChar = in.nextLine().charAt(0);
System.out.println(getChar);
//通过缓冲流
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
getChar = reader.readLine().charAt(0);
System.out.println(getChar);
//直接输出,通过把字节数组转化为char
byte[] getCharByByte = new byte[2];
if(System.in.read(getCharByByte) != -1){
getChar = new String(getCharByByte).charAt(0);
System.out.println(getChar);
} } }
Scanner没有直接返会char的方法,不过可以通过多种路径获得char,基本上都是从string转化的,也可以通过DataInputStream进行直接读取char,不过比较麻烦,需要把读取出的再度转码。不如通过string转化。
以上是刚写的四种获得char的方式。
控制台输入的汉字完全可以接受,通过String接受后转化成char型的,就是我前面的这些例子,都是获得String然后通过charAt指定char型。java是基于unicode的,所以char是2字节单位的数据类型,如果想通过字节去接受char,可以按照我上面指定的最后一个方法进行。只要能正确解码,是完全能够接受汉字的,在控制台上进行字符接收使用默认字符集进行编码和解码,不会出现乱码问题。

java 接收 char字符型的更多相关文章

  1. 【Java】Java_08 字符型与布尔值

    1.字符型(2个字节) 单引号用来表示字符常量.例如‘A’是一个字符,它与“A”是不同的,“A”表示含有一个字符的字符串 char 类型用来表示在Unicode编码表中的字符 Unicode编码被设计 ...

  2. 让人又爱又恨的char(字符型)

    今天来总结一下char型,平常写算法的时候对这个东西感觉都有一点绕着走,说到底还是对这部分的知识不熟悉所以有点怕他,不过以后不要怕,今天来总结一下 首先,说到字符型数据类型,char型,恩它是一种数据 ...

  3. C++数据类型之字符型&转义字符

    字符型 **作用:** 字符型变量用于显示单个字符 **语法:**  char ch = 'a'; > 注意1:在显示字符型变量时,用单引号将字符括起来,不要用双引号 > 注意2:单引号内 ...

  4. c++程序—字符型

    #include<iostream> using namespace std; int main() { //字符型 char ch = 'a'; cout << ch < ...

  5. Java开发笔记(三十二)字符型与整型相互转化

    前面提到字符类型是一种新的变量类型,然而编码实践的过程中却发现,某个具体的字符值居然可以赋值给整型变量!就像下面的例子代码那样,把字符值赋给整型变量,编译器不但没报错,而且还能正常运行! // 字符允 ...

  6. Java中switch对整型/字符型/字符串型具体实现细节

    转自:http://www.hollischuang.com/archives/61 Java7中switch中支持的数据类型有: byte short int char String类型 其实swi ...

  7. 014 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 08 “字符型”字面值

    014 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 08 "字符型"字面值 字符型 字面值如何表示? 两个关键:单引号(必须是英文单引号). ...

  8. 关于字符型char变量

    写程序时,意外发现个很不容易察觉问题出在哪的问题的 scanf("%c",&ch); scanf("%c",&c); printf(" ...

  9. java由字符型强制转化为整型例题

    此Java程序依次输出参数,参数类型为字符型,要求更改程序,使得字符型强制转化为整形,并将这些整数相加,最后输出总和. 原程序: package demo; public class CommandP ...

随机推荐

  1. Node.js爬虫数据抓取乱码问题总结

    一.非UTF-8页面处理 1.背景 windows-1251编码 比如俄语网站:https://vk.com/cciinniikk 可耻地发现是这种编码 所有这里主要说的是 Windows-1251( ...

  2. 使用MinGW 编译 iconv 库

    原文链接: http://www.code-by.org/viewtopic.php?f=54&t=166 GNU页面 http://ftp.gnu.org/pub/gnu/libiconv/ ...

  3. C#实战Microsoft Messaging Queue(MSMQ)消息队列(干货)

    前言 在使用MSMQ之前,我们需要自行安装消息队列组件!(具体安装方法大家自己搜一下吧) 采用MSMQ带来的好处是:由于是异步通信,无论是发送方还是接收方都不用等待对方返回成功消息,就可以执行余下的代 ...

  4. BI之SSAS完整实战教程5 -- 详解多维数据集结构

    之前简单介绍过多维数据集(Cube)的结构. 原来计划将Cube结构这部分内容打散,在实验中穿插讲解, 考虑到结构之间不同的部分都有联系,如果打散了将反而不好理解,还是直接一次性全部讲完. 本篇我们将 ...

  5. python 的import机制2

    http://blog.csdn.net/sirodeng/article/details/17095591   python 的import机制,以备忘: python中,每个py文件被称之为模块, ...

  6. FL2440驱动添加(3)LCD驱动添加学习笔记

    FL2440 LCD内置控制器,320*240 TFT型LCD. 自我理解总结的两种添加驱动模式: 非platform方式添加驱动: 加载驱动: 1,硬件初始化,申请内存,并作地址映射 2,分配设备号 ...

  7. 泛函编程(21)-泛函数据类型-Monoid

    Monoid是数学范畴理论(category theory)中的一个特殊范畴(category).不过我并没有打算花时间从范畴理论的角度去介绍Monoid,而是希望从一个程序员的角度去分析Monoid ...

  8. php页面输出时,js设置input框的选中值

    /* 设置表单的值 */ function setValue(name, value) { var first = name.substr(0, 1), input, i = 0, val; if ( ...

  9. poolboy的坑

    poolboy是Erlang中运用非常广泛的进程池库,它有很多优点,使用简单,在很多项目中都能看到它的身影.不过,它也有一些坑,使用时候需要注意.(本文对poolboy的分析基于1.5.1版本) wo ...

  10. mysql root强密码的必要性max_allowed_packet被改成1024引起的风险

    前两天运维反馈说,有些机器的max_allowed_packet隔两天就会被改成1024,导致客户端调用时出错,网上有说内存不够的,也有人工修改的. 运维小姑娘一口咬定肯定没有改过的,而且my.cnf ...