我想出了如何为String
和int
执行此操作,但我无法为char
找出它。当我尝试编译时,它给出了一个错误,我有char
的字符串标记。
StringTokenizer stk = new StringTokenizer(line);
String name = stk.nextToken();
char sex = stk.nextToken();
int count = Integer.parseInt(stk.nextToken());
答案 0 :(得分:1)
使用String.charAt(0);
char sex = (stk.nextToken()).charAt(0);
我认为你的字符串类似于" a b c d"。
答案 1 :(得分:0)
nextToken()
方法返回String
,与char
不兼容。如果您确定该令牌至少有一个字符长,您可以使用String#charAt
取字符串的第一个字符,如下所示:
char sex = stk.nextToken().charAt(0);
答案 2 :(得分:0)
您需要检查字符串的长度,因为您只允许在char
中放置1个字符。
尝试类似:
char c = 0;
if (name.length() == 1){
c = name.charAt(0);
}