具体相关内容采用代码+注释的方式书写,一来通过代码体现相关方法的使用方式,更加便于理解,二来在其旁边注释更加清晰易懂,便于回忆,三来在代码实现过程中,也会需要其他的知识,虽然还没学,这样可以提前了解领悟领悟。
注:Java中从键盘上输入的文字、数字皆被视为字符串,因此在从键盘上输入数据后,该数据皆为string类型。
涉及的方法有:
parseXXX() 【 将string类型转换为其他类型】
hasNextXXX() 、nextXXX() 、next() 、nextLine()。
还有Scanner类 。
代码如下:
package Practice;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Scanner;
public class Reader {
public static void main(String[] args) throws IOException {
/**
* 利用键盘输入数据
*/
String str; //声明str为String类型的变量;
BufferedReader buf; //声明buf为BufferedReader类的变量,该类在java.io类库中;
buf = new BufferedReader(new InputStreamReader(System.in)); //创建buf对象;
System.out.println("请输入字符串(一个数,执行parseXXX):");
str = buf.readLine(); //用readLine()方法读入字符串存入str中,且须处理IOException异常【在main后加上 throws IOException解决】
/**
* 1.数字字符型串型(String)数据 转换 byte、short、int、float、double、long等数据类型【数据类型类首字母大写】
* 2.字符串“ture”、“false”转换为相应的布尔类型(boolean)
* 使用 parseXXX() 方法完成,如下
*/
int num;
num = Integer.parseInt(str); //将str转成int类型后赋给num
System.out.println("输入的字符串转成int类型后,其值为:" + num);
//InputStreamReader inp = new InputStreamReader(System.in); 创建inp对象
/**
* 从键盘上读取一个字符
*/
char str0;
BufferedReader buff; //声明buff为BufferedReader类的变量,该类在java.io类库中;
buff = new BufferedReader(new InputStreamReader(System.in)); //创建buff对象;
System.out.println("请输入一个字符:");
str0 = (char)buf.read();
System.out.println("你所输入的字符串(字符)为:" + str0);
/**
* 利用Scanner类从键盘输入数据;
* 第一种:hasNextXXX()与nextXXX()方法配合使用
* 第二种:使用next()和 nextLine()方法接收从键盘输入字符串型数据;
*/
/**
* hasNextXXX()与nextXXX()方法配合使用:
* nextXXX()方法被调用后,等待用户从键盘上输入数据并按Enter键(或空格键、Tab键)确认;
* hasNextXXX()方法判断永远忽在键盘上输入的是否是相应类型的数据。eg:输入123.45后按Enter键,hashNextFloat()的值为true,而hasNextInt()的值为false;
*/
int n = 0; //计数器
System.out.println("请输多个数值,每输入一个数后按Enter键(或空格键、Tab键)确认:");
System.out.println("最后输入一个非数字结束输入操作");
Scanner reader1 = new Scanner(System.in); //创建Scanner类对象用于读取System.in的输入
while(reader1.hasNextDouble())
{
double x = reader1.nextDouble();
n++;
}
System.out.println("共输入了 " + n + " 个数。");
/**
* 使用next()和 nextLine()方法接收从键盘输入字符串型数据;
*/
String str1,str2;
Scanner reader2 = new Scanner(System.in);
System.out.print("请输入字符串(从键盘上输入的文字、数字,Java皆视为字符串)");
str1 = reader2.nextLine();
str2 = reader2.next();
System.out.println("string:" + str1 + "," + str2 );
}
}