์ง๋ ํฌํธํ ์์ Split ํจ์๋ฅผ ํตํ Tokenizer ๋ฐฉ๋ฒ์ ๊ธฐ์ ํ๋ค.
Java์์๋ StringTokenizer๋ผ๋ ํจ์๋ ์กด์ฌํ๋ค.
๋์ ์๋ฆฌ๋ C์ธ์ด์์ ์ฌ์ฉํ๋ strtok ํจ์์ ๋น์ทํ๊ฒ ๋ณผ ์ ์๋ค.
์์ฑ์(Constructor)
StringTokenizer(String str)
ํด๋น ๋ฌธ์์ด์ ๋ํด ๋ฌธ์์ด ํ ํฐํ ๊ตฌ์ฑ |
StringTokenizer(String str, String delim)
ํด๋น ๋ฌธ์์ด์ ๋ํด ๋ฌธ์์ด ํ ํฐํ ๊ตฌ์ฑ |
StringTokenizer(String str, String delim, boolean returnDelims)
ํด๋น ๋ฌธ์์ด์ ๋ํด ๋ฌธ์์ด ํ ํฐํ ๊ตฌ์ฑ |
ํจ์(Method)
countTokens()
์์ผ๋ก ํธ์ถํ ์ ์๋ ํ์๋ฅผ ๋ฐํํ๋ค. |
hasMoreElements()
hasMoreTokens์ ๋์ผํ ๊ฐ์ ๋ฐํํ๋ค. |
hasMoreTokens()
ํด๋น ๋ฌธ์์ด์์ ์ฌ์ฉํ ์ ์๋ ํ ํฐ์ด ๋ ์๋์ง ์ฌ๋ถ๋ฅผ true, false ๊ฐ์ผ๋ก ๋ฐํํ๋ค. |
nextElement()
๋ฐํ๊ฐ์ด ๋ฌธ์์ด์ด ์๋ Object๋ผ๋ ์ ์ ์ ์ธํ๊ณ ๋ nextToken๊ณผ ๋์ผํ ๊ฐ์ ๋ฐํํ๋ค. |
nextToken()
ํด๋น ๋ฌธ์์ด์์ ๋ค์ ํ ํฐ์ ๋ฐํํ๋ค. |
nextToken(String delim)
ํด๋น ๋ฌธ์์ด์์ ๋ค์ ํ ํฐ์ ๋ฐํํ๋ค. |
Calculator ๊ตฌํ ์ค ์ผ๋ถ๋ถ์์ StringTokenizer๋ฅผ ๋ค์๊ณผ ๊ฐ์ด ์ฌ์ฉํ๋ค.
ActionListener resultEventHandler = new ActionListener() {
public void actionPerformed(ActionEvent e) {
String data = textarea.getText();
StringTokenizer token = new StringTokenizer(data,"+-*/",true);
double a = Double.parseDouble(token.nextToken());
String buffer = token.nextToken();
double b = Double.parseDouble(token.nextToken());
if(buffer.equals("+")) {
System.out.println(a+b);
}
else if (buffer.equals("-")) {
System.out.println(a-b);
}
else if (buffer.equals("*")) {
System.out.println(a*b);
}
else if (buffer.equals("/")) {
System.out.println(a/b);
}
}
};
*Reference
https://docs.oracle.com/javase/7/docs/api/java/util/StringTokenizer.html
'๐ฌ Language > Java' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
Overloading๊ณผ Overriding (0) | 2020.01.30 |
---|---|
Calculator ์ค์ต ์์ฑ (0) | 2020.01.18 |
extends์ implements (0) | 2020.01.17 |
Event๋? (0) | 2020.01.11 |
GUI ํํํ๊ธฐ (0) | 2020.01.09 |