2012-04-26 83 views
-5

我想要做的是改變這樣的:"The Three Pigs"到像這樣的數組:如何使字符串成爲字符串數組?

Array[0]="The" 
Array[1]="Three" 
Array[2]="Pigs" 

string類不具有一個方法,我無法弄清楚如何做到這一點我自己 拆分似乎不適合我的目的,所以請停止說明。示例代碼:

import java.util.Scanner; 


public class Main { 

/** 
* @param args 
*/ 
public static void main(String[] args) { 
    GetNumber(); 
} 

private static void GetNumber() { 
    System.out.println("Enter your words."); 
    Scanner S=new Scanner(System.in); 
    String O=S.next(); 
    String[] A=O.split(" "); 
    for(int Y=0;A.length>Y;Y++){ 
     System.out.println(A[Y]); 
    } 
} 

} 

此代碼將輸出的,如果我把在小豬

+0

String.split(」「); – 2012-04-26 01:09:01

+1

您是否嘗試過打印O?你確定你正確使用掃描儀嗎? – 2012-04-26 01:18:37

回答

6
String text = "The Three Pigs"; 
String[] array = text.split(" "); 

編輯:

如果你想讓用戶輸入的一行文本,而不是一個單詞,然後使用:

String O = S.nextLine(); 

,而不是:

String O = S.next(); 
+0

這似乎刪除了過去的一切,這就是爲什麼我發佈的帖子 – Natecat 2012-04-26 01:11:29

+0

你確定你有正確的字符串?你有任何示例代碼? – 2012-04-26 01:12:59

+0

@ user1357527如果你嘗試在這個答案中說什麼,你會得到什麼? – woliveirajr 2012-04-26 01:15:41

2

由於事實上,這String確實method for that

/編輯
Scanner#next返回輸入的下一個標記。 Scanner將它們通過空格接收到的輸入標記化,所以"The Little Pigs"將通過調用next而被標記化爲"The","Little""Pigs"。如果您想要整行,請嘗試Scanner#nextLine

+0

@ user1357527看我的編輯 – Jeffrey 2012-04-26 01:20:50

3

如下

String[] arrString = s.split(" "); 
3
String[] theArray = "The Three Pigs".split(" "); 

至於你的問題更新,改變你的掃描儀從.next().nextLine()

import java.util.Scanner; 

public class ArrayTest 
{ 
    public static void main(String[] args) 
    { 
     System.out.println("Enter your words."); 
     Scanner scanner = new Scanner(System.in); 
     String O = scanner.nextLine(); 
     System.out.println(O); 
     String[] A = O.split(" "); 
     for (int Y = 0 ; A.length > Y ; Y++) 
     { 
      System.out.println(A[ Y ]); 
     } 
    } 
} 
相關問題