任务描述
本关任务:将一段英语字符串进行单词分割。
相关知识
为了完成本关任务,你需要掌握:如何将字符串进行分割。
String.split()拆分字符串
lang
包String
类的split()
方法
public String[] split(String regex)
public String[] split(String regex,int limit)
//limit 参数控制模式应用的次数,因此影响所得数组的长度
拆分示例:
public class SplitDemo {
public static void main(String[] args) {
String Str="Harry James Potter";
String[] StrArray=Str.split("\\s");//"\\s"表示空格
//也可以来" "来进行拆分 String[] StrArray=Str.split(" ");
for(String str:StrArray){
System.out.println(str);
}
}
运行结果 Harry
James
Potter
StringTokenizer类拆分字符串
util
包下的StringTokenizer
类
- 拆分原理
StringTokenizer
拆分字符串的原理是通过生成StringTokenizer
对象,然后运用对象的属性来处理字符串拆分的。
public StringTokenizer(String str,String delim,boolean returnDelims)
public StringTokenizer(String str,String delim)
public StringTokenizer(String str)
//str:要解析的字符串 delim:分隔符 returnDelims:是否将分隔符作为标记返回
拆分示例:
import java.util.StringTokenizer;
public class StringTokenDemo {
public static void main(String[] args) {
String Str="Harry James Potter";
StringTokenizer strToken=new StringTokenizer(Str);
//当有拆分的子字符串时,输出这个字符串
while(strToken.hasMoreTokens()){
System.out.println(strToken.nextToken());
}
}
}
运行结果 Harry
James
Potter
编程要求
请仔细阅读右侧代码,根据方法内的提示,在Begin - End
区域内进行代码补充,具体任务如下:
- 用
String.split()
方法将字符串“aaa|bbb|ccc”以“|”进行拆分,用StringTokenizer
类将字符串“This?is?a?test?string”以“?”
进行拆分。
测试说明
补充完代码后,点击测评,平台会对你编写的代码进行测试,当你的结果与预期输出一致时,即为通过。
测试输入: aaa|bbb|ccc
This?is?a?test?string
预期输出: aaa
bbb
ccc
This
is
a
test
string
提示: “|”
、“.”
、“*”
、“+”
、“\\”
等不是有效的模式匹配规则表达式,是转义字符,使用split()
方法时必须得加"\\"
才行。
import java.util.List;
import java.util.ArrayList;
import java.util.StringTokenizer;
public class StudentDemo{
//使用String.split()方法分割
public List<String> splitPartition(String str){
List<String> list=new ArrayList<String>();
//请在此添加实现代码
/********** Begin **********/
String[] strArray=str.split("\\|");
for(String Str:strArray){
System.out.println(Str);
}
System.out.println();
/********** End **********/
return list;
}
//使用StringTokenizer类进行分割
public List<String> tokenPartition(String str){
List<String> list=new ArrayList<String>();
//请在此添加实现代码
/********** Begin **********/
StringTokenizer strToken=new StringTokenizer(str,"?");
while(strToken.hasMoreTokens()){
System.out.println(strToken.nextToken());
}
/********** End **********/
return list;
}
}
标签:分割,String,拆分,单词,头歌,StringTokenizer,str,public,split
From: https://blog.csdn.net/f3244077856/article/details/142845185