黑马程序员技术交流社区
标题:
关于Split()
[打印本页]
作者:
涿郡丶二哥
时间:
2015-5-2 08:51
标题:
关于Split()
今天在做字符串切割时候想以“.”进行切割,可是切出来的东西都不是我想要的,后来觉得是不是“.”是不是有特殊含义,想用转义字符“\.”竟然报错了。瞬间郁闷,经多方查找终于找到解决办法“\\.”究其原因是因为正则表达式中.代表所有字符 想用.本身的意思就要\.而在JAVA中想用.本身的意思就要\\.
下面代码奉上:
package intcast_0430;
import java.util.Collection;
import java.util.HashMap;
import java.util.Map;
import java.util.Set;
/*
* 1、有类似这样的字符串:"1.2,3.4,5.6,7.8,5.56,44.55"请按照要求,依次完成以下试题。
* (1)以逗号作为分隔符,把已知的字符串分成一个String类型的数组,数组中的每一个元素类似于"1.2","3.4"这样的字符串
* (2)把数组中的每一个元素以"."作为分隔符,把"."左边的元素作为key,右边的元素作为value,封装到Map中,Map中的key和value都是Object类型。
* (3)把map中的key封装到Set中,并把Set中的元素输出。
* (4)把map中的value封装到Collection中,把Collection中的元素输出。
* 思路: 1)字符串切割,保存在字符串数组中{"1.2","3.4","5.6","7.8","5.56","44.55"};
* 2)再次切割字符串数组中的元素用另一个接收,遍历这个数组存到map集合中
* 3)获取map中的key转存到set集合
* 4)获取map中的value转存到collection集合中
*/
public class ExamTest1 {
public static void main(String[] args) {
String string = "1.2,3.4,5.6,7.8,5.56,44.55";
//定义Map集合泛型为Object类型
Map<Object, Object> map = new HashMap<Object, Object>();
//分割字符串字符数组接收
String[] str = string.split(",");
//循环遍历过程中切割数组内部字符串存入Map集合需要Map集合
for(String string1:str){
//System.out.print(string1+" ");
String[] str2 = string1.split("\\.");
//遍历Str2存入集合
for(int x=0; x<str2.length;x++){
map.put(str2[0], str2[1]);
}
}
//set集合接收key
Set<Object> set = map.keySet();
// for (Object object : set) {
// System.out.println(object+"**"+map.get(object));
// }
System.out.println(set);
//collection集合接收value
Collection<Object> collection = map.values();
System.out.println(collection);
System.out.println("\"");
}
}
作者:
大西洋
时间:
2015-5-2 09:00
最近刚开始学Map集合,学习~
作者:
涿郡丶二哥
时间:
2015-5-2 09:05
大西洋 发表于 2015-5-2 09:00
最近刚开始学Map集合,学习~
我们刚学IO,Map刚过~可以交流下~
作者:
刘斌斌
时间:
2015-5-2 09:37
赞一下~!
作者:
大西洋
时间:
2015-5-2 10:46
涿郡丶二哥 发表于 2015-5-2 09:05
我们刚学IO,Map刚过~可以交流下~
感谢,我看的教程里,老师讲课用的Map<String,String>用来添加字符串;
请问:Object是Java的根类,Map<Object, Object> 这样写的意思,是接受各种类型吗?
作者:
dianxiaoer
时间:
2015-5-2 15:28
收缴了,都是大神
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2