java语言中的scanner是什么意思用来干嘛
1个回答
展开全部
一个可以使用正则表达式来解析基本类型和字符串的简单文本扫描器。
scanner
使用分隔符模式将其输入分解为标记,默认情况下该分隔符模式与空白匹配。然后可以使用不同的
next
方法将得到的标记转换为不同类型的值。
例如,以下代码使用户能够从
system.in
中读取一个数:
scanner
sc
=
new
scanner(system.in);
int
i
=
sc.nextint();
再看一个例子,以下代码使
long
类型可以通过
mynumbers
文件中的项分配:
scanner
sc
=
new
scanner(new
file("mynumbers"));
while
(sc.hasnextlong())
{
long
along
=
sc.nextlong();
}
扫描器还可以使用不同于空白的分隔符。下面是从一个字符串读取若干项的例子:
string
input
=
"1
fish
2
fish
red
fish
blue
fish";
scanner
s
=
new
scanner(input).usedelimiter("\\s*fish\\s*");
system.out.println(s.nextint());
system.out.println(s.nextint());
system.out.println(s.next());
system.out.println(s.next());
s.close();
输出为:
1
2
red
blue
以下代码使用正则表达式同时解析所有的
4
个标记,并可以产生与上例相同的输出结果:
string
input
=
"1
fish
2
fish
red
fish
blue
fish";
scanner
s
=
new
scanner(input);
s.findinline("(\\d+)
fish
(\\d+)
fish
(\\w+)
fish
(\\w+)");
matchresult
result
=
s.match();
for
(int
i=1;
i<=result.groupcount();
i++)
system.out.println(result.group(i));
s.close();
scanner
使用分隔符模式将其输入分解为标记,默认情况下该分隔符模式与空白匹配。然后可以使用不同的
next
方法将得到的标记转换为不同类型的值。
例如,以下代码使用户能够从
system.in
中读取一个数:
scanner
sc
=
new
scanner(system.in);
int
i
=
sc.nextint();
再看一个例子,以下代码使
long
类型可以通过
mynumbers
文件中的项分配:
scanner
sc
=
new
scanner(new
file("mynumbers"));
while
(sc.hasnextlong())
{
long
along
=
sc.nextlong();
}
扫描器还可以使用不同于空白的分隔符。下面是从一个字符串读取若干项的例子:
string
input
=
"1
fish
2
fish
red
fish
blue
fish";
scanner
s
=
new
scanner(input).usedelimiter("\\s*fish\\s*");
system.out.println(s.nextint());
system.out.println(s.nextint());
system.out.println(s.next());
system.out.println(s.next());
s.close();
输出为:
1
2
red
blue
以下代码使用正则表达式同时解析所有的
4
个标记,并可以产生与上例相同的输出结果:
string
input
=
"1
fish
2
fish
red
fish
blue
fish";
scanner
s
=
new
scanner(input);
s.findinline("(\\d+)
fish
(\\d+)
fish
(\\w+)
fish
(\\w+)");
matchresult
result
=
s.match();
for
(int
i=1;
i<=result.groupcount();
i++)
system.out.println(result.group(i));
s.close();
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询