2015-07-12 111 views
1
import java.util.Scanner; 
public class Test{ 
    public static void main(String[] args){ 
     Scanner input = new Scanner(System.in); 
     input.useDelimiter("."); 
     String given = input.next(); 
     System.out.println(given); 
    } 
} 

當我運行上面的代碼並輸入asdf.然後輸入,我什麼也沒得到。如何使用點作爲分隔符?

它正常工作與","";""\"""\\\\"或什麼,只是不"." ...那麼,有沒有一些關於一個點或者是它只是一個問題的Eclipse IDE或什麼?

回答

1

掃描儀使用正則表達式(正則表達式)作爲分隔符,dot .正則表達式是特殊字符,它表示除行分隔符以外的任何字符。所以如果分隔符是任何字符當你寫asdf.它的每個字符將被視爲分隔符,而不僅僅是點。所以,每一次你會使用next()結果將是存在於地方空字符串我打上|

a|s|d|f|. 

要創建點文字,你需要逃避它。您可以使用\.。還有其他方法,例如使用character class[.]

因此,與

input.useDelimiter("\\."); 
嘗試
相關問題