为什么String在Scanner中可以输入数字

来源:-

suxiao

2015-10-17 02:52

在一个“ Scanner input=new Scanner(System.in);”中,我定义了一个变量是String类型的,在运行时,不小心输入了数字,结果仍然运行了,并没有报错。后来我单独又创建了另一个项目验证了一下,String直接定义变量时,赋值为数字会报错,但如果像我上面说的用Scanner在运行中输入数字的话,计算机就不会报错,仍然运行接下来的编码。

这是什么原因呢?

写回答 关注

1回答

  • 天启之魂
    2015-10-17 08:32:46

    Scanner类是一个扫描器,他会将你输入的数据扫描到流中,如果你定义的是String类型,那么他会默认你接下来输入的是字符串类型的数据,  如果你输入的是123,那么扫描器会将数值扫描进流中变成"123",不会有任何编译问题

Java入门第二季 升级版

课程升级!以终为始告别枯燥,在开发和重构中体会Java面向对象编程的奥妙

530653 学习 · 6091 问题

查看课程

相似问题