2014-02-17 46 views
1

我正在從console字符串輸入。如果我輸入「ABCD」和灑像這樣無效的Java數組的大小

Scanner input = new Scanner(System.in); 
String[]stringInput = input.nextLine().toLowerCase().trim().split(""); 

想,我已經進入"abcd"作爲輸入,stringInput.length是顯示5。但是,它應該是4對不對?怎麼了,我在這裏做?任何想法 ?我該如何解決這個問題?

+2

String.split()是真的不應該使用獲得的單個字符一個字符串的方法。使用的charAt()或子()或toCharArray()。 –

+0

閱讀方法拆分的工作,你也會得到你的答案...... –

回答

2

有在端部的空字符串。

使用split("", -1)

....,該陣列可具有任何長度,和後空字符串將被丟棄

0

總是有一個空的空間中的string.So後你需要使用 你的情況abcd和一個空格

Use split("", -1) 
1

使用split("")總是存在數組的一個額外的空元素在第一指數

可以肯定的,你可以嘗試:

System.out.println(Arrays.toString(stringInput)); 

輸出:

[, a, b, c, d]