為什么String在Scanner中可以輸入數(shù)字
在一個“?Scanner input=new Scanner(System.in);”中,我定義了一個變量是String類型的,在運行時,不小心輸入了數(shù)字,結(jié)果仍然運行了,并沒有報錯。后來我單獨又創(chuàng)建了另一個項目驗證了一下,String直接定義變量時,賦值為數(shù)字會報錯,但如果像我上面說的用Scanner在運行中輸入數(shù)字的話,計算機就不會報錯,仍然運行接下來的編碼。
這是什么原因呢?
2015-10-17
Scanner類是一個掃描器,他會將你輸入的數(shù)據(jù)掃描到流中,如果你定義的是String類型,那么他會默認你接下來輸入的是字符串類型的數(shù)據(jù), ?如果你輸入的是123,那么掃描器會將數(shù)值掃描進流中變成"123",不會有任何編譯問題