Scanner 类 --1.5版新增类

---------------------- ASP.Net+Unity开发.Net培训、期待与您交流! ----------------------

/*Scanner 类是1.5版本出现的,一个可以使用正则表达式来解析基本类型和字符串的简单文本扫描器。

构造方法主要有
new Scanner(File source) 文件扫描器
new Scanner(InputStream source) 输入流扫描器
new Scanner(String source) 指定字符串扫描
常用方法
int nextInt(); 将下一个标记前的数据扫描为一个 int
double nextDouble(); 将下一个标记前的数据扫描为一个double

String next();  查找并返回来自此扫描器的下一个完整标记(字符串)
String nextLine();  此扫描器执行当前行所有信息
用于判断的方法
boolean hasNext();  如果此扫描器的输入中有另一个标记,则返回true
boolean hasNext(Pattern pattern); 如果下一个完整标记与指定模式匹配,则 返回true 标记是正则表达式
boolean hasNext(String pattern); 如果下一个标记与从指定字符串构造的模式 匹配,则返回true
boolean hasNextInt(); 如果通过使用nextInt()方法,此扫描器输入信息中的下 一个标记可以解释为指定基数中的一个int 值,则返回true。

*
*
*/  


public class ScannerTest {


public static void main(String[] args) {
//test1();
//test2();
test3();
}

//有键盘录入数据,转换成二进制后输出
public static void test3(){
Scanner sca=new Scanner(System.in);//键盘录入
while(sca.hasNext()){
String s=sca.nextLine();

if(isInteger(s)){
StringBuffer sb = new StringBuffer();
int a=Integer.parseInt(s);
while(a!=0){
int b=a%2;
a=a/2;
sb.append(b);
}
sb.reverse();
System.out.println(sb.toString());

}else{
System.out.println("输入的不是数值型数据,请重新输入");

}
}
}
//判断字符串是否为整数
public static boolean isInteger(String s){
try {
Integer.valueOf(s);
return true;
} catch (Exception e) {
return false;
}
}
public static void test2(){
Scanner sca=new Scanner("456end123end789end55wend");//键盘录入
sca.useDelimiter("end");//设置结束标记符
while(sca.hasNextInt()){//判断下一个标记前是否是整数,如果不是就返回false
System.out.println(sca.nextInt());//只有读到"end"标记时才打印出来。
}
sca.close();
}
public static void test1(){
Scanner sca=new Scanner(System.in);//键盘录入
sca.useDelimiter("end");//设置结束标记符
while(sca.hasNext()){
System.out.println(sca.next());//只有读到"end"标记时才打印出来。
System.out.println(sca.nextLine());//自定义的"end"也可读到。
}
sca.close();
}

}

---------------------- ASP.Net+Unity开发.Net培训、期待与您交流! ----------------------详细请查看:http://edu.csdn.net

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值