maptostringjava
㈠ java中将map转成json时,如何将map中的整型数字在转成json后,变成字符串,而不是整型。
好像没有什么特别的办法,可能是我才疏学浅,
我知道的两种方式:
map是键值对存在,那么类型都是固定的,我们可以再申请个map<String ,String>遍历替换原来的map再转换成json字符串
字符串替换,用正则添加双引号:
publicvoidtestJson(){
Map<String,Integer>map=newHashMap<String,Integer>();
map.put("aaa",111);
Stringjson=JSON.toJSONString(map);
Stringjson1=json.replaceAll(":",":"");
json1=json1.replaceAll("}",""}");
System.out.println(json);
System.out.println(json1);
}
㈡ java8的stream().mapToInt()什么意思
Stream(流)是一个来自数据源的元素队列并支持聚合操作
<strong元素队列< strong="">元素是特定类型的对象,形成一个队列。 Java中的Stream并不会存储元素,而是按需计算。
数据源 流的来源。 可以是集合,数组,I/O channel, 产生器generator 等。
聚合操作 类似SQL语句一样的操作, 比如filter, map, rece, find, match, sorted等。
可以试试这个输出什么:
String[] strarr = {"abc", "defg", "vwxyz"};
int iSum = Arrays.stream(strarr)
.mapToInt(s -> s.length())
.sum();
System.out.println("长度和: "+iSum);
(2)maptostringjava扩展阅读:
Java还包括一个类的扩展集合,分别组成各种程序包(Package),用户可以在自己的程序中使用。例如,Java提供产生图形用户接口部件的类(java.awt包),这里awt是抽象窗口工具集(abstract windowing toolkit)的缩写,处理输入输出的类(java.io包)和支持网络功能的类(java.net包)。
㈢ JAVA MAP数据处理
public static void main(String[] args) {
String json = "[{\"a\":\"1\",\"b\":\"2\"},{\"a\":\"3\", \"b\":\"4\"},{\"a\":\"5\", \"b\":\"6\"}]";
List<Map<String, Object>> mapList = (List<Map<String, Object>>) JSON.parse(json);
for (Map<String, Object> map : mapList) {
System.out.println(JSON.toJSONString(map));
}
}
㈣ 写了一个方法,但是调用时报java.util.HashMap cannot be cast to java.lang.String 求指点
queryForObjectBySql返回的是map类型的吧,map类型转String出错。
㈤ java中string[]转object时报 Cannot cast from Map<String,String[]> to Map<String,Object> 这样的错误
<String,String[]>这个<>是Java的泛型用到的语法。目的是编译时期就确定具体的类型。
也就是String就是String,String[]就是String[]。如果你还是转为Object就失去了泛型存在的意义。
不使用泛型的时候,是可以转换的。比如以下代码,都可以通过编译。
Stringstr="test";
Objectobj=str;
String[]strArr={"t","123"};
obj=strArr;
㈥ 如何用java程序将Map中的关键字全部转换成小写
1、对map进行遍历。
2、对遍历到的关键字进行小写转换。
㈦ JAVA中String如何转为Map
/**
*String转换Map
*
*@parammapText
*:需要转换的字符串
*@paramKeySeparator
*:字符串中的分隔符每一个key与value中的分割
*@paramElementSeparator
*:字符串中每个元素的分割
*@returnMap<?,?>
*/
publicstaticMap<String,Object>StringToMap(StringmapText){
if(mapText==null||mapText.equals("")){
returnnull;
}
mapText=mapText.substring(1);
mapText=EspUtils.DecodeBase64(mapText);
Map<String,Object>map=newHashMap<String,Object>();
String[]text=mapText.split("\"+SEP2);//转换为数组
for(Stringstr:text){
String[]keyText=str.split(SEP1);//转换key与value的数组
if(keyText.length<1){
continue;
}
Stringkey=keyText[0];//key
Stringvalue=keyText[1];//value
if(value.charAt(0)=='M'){
Map<?,?>map1=StringToMap(value);
map.put(key,map1);
}elseif(value.charAt(0)=='L'){
List<?>list=StringToList(value);
map.put(key,list);
}else{
map.put(key,value);
}
}
returnmap;
}
㈧ #java#Map取值的时候bigdecimal类型的怎么转换为String类型的
Bigdecimal 下有此方法 floatValue(),转换成float类型,然后再转换成String。比如:
b 是 Bigdecimal的一个实例。 那么 b.floatValue() + "", 这个就是String类型。
sorry,我没看完整你的问题,map中的get()方法返回map中存放的value,根据你用的String.valueOf(cmap.get("ID")方法,你查文档,这个方法返回值就是String类型。而你直接进行强转,就相当于有一个动物这个类转换成植物类。这两个类毫不相干,是无法进行强转的,而你使用这个方法cmap.get("ID").toString(),当value是一个基本数据类型的时候,是没有toString()方法的。 你去查文档,String.valueOf( int i ),String.valueOf( float f) ,String.valueOf( Object o).....所以valueOf方法能成功
㈨ java 8 流式计算 mapToDouble 会丢失精度吗
List<String> list = Arrays.asList("11.11555", "11.225555", "11.35553");
list.stream().mapToDouble(p -> Double.parseDouble(p)).forEach(System.out::println);
mapToDouble应该不会丢失精度,这一步操作只是转换而已。丢失应该会在统计计算的时候丢失
㈩ java中如何把hashmap转换成object数组
hashmap是以键值对(key-value)的格式保存对象的容器,
数组是按顺序一个一个保存对象的容器
你把hashmap转换成数组是想把key转成数组呢还是把value转成数组呢或者key和value组合成的对象转换成数组呢.我把key和value的分别写出来,组合对象的同理建新对象保存即可
Map<String, Object> map = new HashMap<String, Object>();
map.put("a", "tom");
map.put("b", "jerry");
Object[] keys = map.keySet().toArray();
Object[] values = map.values().toArray();
System.out.println("key数组:"+Arrays.toString(keys));
System.out.println("value数组:"+Arrays.toString(values));