1.string 1>substr(),截取字串的方法.返回一个从指定位置开始,并具有指定长度的子字符串.参数 start(必选),所需的子字符串的起始位置.字符串中第一个字符的索引为 0.length(可选项).返回的子字符串中包含的字符数.第二个参数是指定子串的长度备注.如果 length为0或负数,将返回一个空字符串.如果没有指定length参数,则子字符串将延续到字符串的结尾. 2>insert() iterator insert( iterator loc, const TYPE &…
题目 转载来的,有些stl和string的函数蛮好的: //numx[i]=string(sx); //把char[]类型转换成string类型 // mat.insert(make_pair(numx[i],0)); //创造一个(string,int)整体——结构体,插入map //sx[j]=ch[sx[j]-'a'];//把字母转换成相应的数字 //mat.find(numx[i])->second;//返回位置—— 取map当中num[i]对应的键值 #include<cstdio&…
题目 Zhejiang University has 40000 students and provides 2500 courses. Now given the student name lists of all the courses, you are supposed to output the registered course list for each student who comes for a query. Input Specification: Each input fi…
最近的一个项目中遇到了调用别人的sdk接口(dll库)而传给我的是一个vector指针,用完之后还要我来删除的情况.这个过程中首先就是在我的exe中将其vector指针转为相应指针再获取vector中相应的数据问题,始终都获得不了正确的数据,要么就是一些非法的数据:另一个问题就是delete这个指针时候会产生相应异常(针对这个问题的思考:如果EXE和DLL都链接到DLL的C/C++运行期库,那么代码将能够很好地运行.但是,如果两个模块中的一个或者两个链接到静态C/C++运行期库,那delete的…
http://blog.csdn.net/alex_xhl/article/details/37692297 List封装了链表,Vector封装了数组, list和vector得最主要的区别在于vector使用连续内存存储的,他支持[]运算符,而list是以链表形式实现的,不支持[]. Vector对于随机访问的速度很快,但是对于插入尤其是在头部插入元素速度很慢,在尾部插入速度很快.List对于随机访问速度慢得多,因为可能要遍历整个链表才能做到,但是对于插入就快的多了,不需要拷贝和移动数据,只…
STL笔记(1)map STL之map ZZ from http://hi.baidu.com/liyanyang/blog/item/d5c87e1eb3ba06f41bd576cf.html 1.map中的元素其实就是一个pair. 2. map的键一般不能是指针, 比如int*, char*之类的, 会出错. 常用的就用string了,int也行. 3. map是个无序的容器, 而vector之类是有序的. 所谓有序无序是指放入的元素并不是按一定顺序放进去的, 而是乱序, 随机存放的(被映…
List封装了链表,Vector封装了数组, list和vector得最主要的区别在于vector使用连续内存存储的,他支持[]运算符,而list是以链表形式实现的,不支持[]. Vector对于随机访问的速度很快,但是对于插入尤其是在头部插入元素速度很慢,在尾部插入速度很快.List对于随机访问速度慢得多,因为可能要遍历整个链表才能做到,但是对于插入就快的多了,不需要拷贝和移动数据,只需要改变指针的指向就可以了.另外对于新添加的元素,Vector有一套算法,而List可以任意加入.Map,Se…
1.String的常用用法 在C语言中,使用字符数组char str[]来存字符串,字符数组操作比较麻烦,而且容易有'\0'的问题,C++在STL中加入string类型,对字符串常用的需求功能进行封装. 使用string,必须要加头文件#include<string>和using namespace std; 注意:#include<string>和#include<string.h>的区别,#inlcude<string.h>是包含了字符串常用的函数,比如…
10.2.9 Map和multimap容器 map/multimap的简介 ²  map是标准的关联式容器,一个map是一个键值对序列,即(key,value)对.它提供基于key的快速检索能力. ²  map中key值是唯一的.集合中的元素按一定的顺序排列.元素插入过程是按排序规则插入,所以不能指定插入位置. ²  map的具体实现采用红黑树变体的平衡二叉树的数据结构.在插入操作和删除操作上比vector快. ²  map可以直接存取key所对应的value,支持[]操作符,如map[key]…
题意:一大堆单词中间有空格隔开,以'#'结束输出,问只出现一次的的单词有哪些(如果两个具有相同的长度,相同的字母也算是相同的,不区分大小写,如:noel和lone属于一个单词出现两次).最后按照字典序输出那些只出现一次的单词 #include <stdio.h> #include <string.h> #include <iostream> #include <algorithm> #include <math.h> #include <l…
STL中的Set和Map 先来看一段网络上的文字描述: 上图是一段关于STL中Set集合的描述,同样的,也近似适合Map的描述.上述文字中,描述了最为重要的特征: Set和Map,底层调用了红黑树的结构,并且实现的是一种自动平衡二叉搜索树. Set 平衡二叉搜索树(Set) 如上图,STL中Set实现的本质是),insert(5),则只会执行第一次的insert操作.后续的插入,并不会执行,因为Set结构的树中无重复元素. 另一个点在于,Set中被插入的键不能被修改,也就是通过迭代器修改键值是不…
JSON 与 String.Map.JavaBean互转 //解析远程登录用户信息 AttributePrincipal principal = AssertionHolder.getAssertion().getPrincipal(); if ((principal == null)|| (principal.getAttributes().isEmpty())){ log.error("远程登录接口有误,请联系开发人员!"); resp.setResult("false&…
标准模板库(STL)学习探究之vector容器  C++ Vectors vector是C++标准模板库中的部分内容,它是一个多功能的,能够操作多种数据结构和算法的模板类和函数库.vector之所以被认为是一个容器,是因为它能够像容器一样存放各种类型的对象,简单地说,vector是一个能够存放任意类型的动态数组,能够增加和压缩数据.为了可以使用vector,必须在你的头文件中包含下面的代码:#include <vector>构造函数. Vectors 包含着一系列连续存储的元素,其行为和数组类…
<pre name="code" class="java"></pre><pre name="code" class="java"><pre name="code" class="java">import java.util.ArrayList; import java.util.HashMap; import java.util.List…
//获得map的迭代器,用作遍历map中的每一个键值对Iterator是迭代器,map之前应该定义过,姑且认为是HashMap.<Entry<String,String>>表示map中的键值对都是String类型的.map.entrySet()是把HashMap类型的数据转换成集合类型map.entrySet().iterator()是去获得这个集合的迭代器,保存在iter里面..迭代器这么用:while(iter.hasNext()) { Entry obj = it.next(…
/** * 发送HTTP请求 * * @param url * @param propsMap * 发送的参数 */ public static String httpSend(String url, Map<String, Object> propsMap) { String responseMsg = ""; HttpClient httpClient = new HttpClient(); PostMethod postMethod = new PostMethod(…
JSONObject和String相互转换 JSONObject jsonObject = new JSONObject(); JSONArray jsonArray = new JSONArray(); try { jsonObject.put("a","1"); jsonObject.put("b","2"); jsonObject.put("c","3"); jsonObject.…
public void TestM() {     List<Map<String, String>> lm = new ArrayList<>();     Map<String, String> m = new HashMap<>();     m.put("1", "chenhe");     m.put("2", "wangchaonan"); Map<…
前提是String的格式是map或json类型的 String 转Json JSONObject  jasonObject = JSONObject.fromObject(str); String 转Map JSONObject  jasonObject = JSONObject.fromObject(str);Map map = (Map)jasonObject; 在网页之间传递数据出现中文乱码解决方案: 例如请求接口返回一个map或json数据,包含中文 1,先将map或json转成stri…
首先我贴上我的代码,刚开始我也不知道怎么排序还写了一些方法,最后请教群里的大神解决了 public Map<String, List<Map<String,Object>>> getGrowList(String id){ List<Map<String, Object>> growList = mentDao.getGrowList(id); SortedMap<String, List<Map<String,Object&g…
借鉴代码 public class StringToMapUtil { public static Map<String, String> getValue(String param) { Map map = new HashMap(); String str = ""; String key = ""; Object value = ""; char[] charList = param.toCharArray(); boolean…
public class PrototypeManager { /** * 用来记录原型的编号和原型实例的对应关系 */ private static Map<String,Prototype> map = new HashMap<String,Prototype>(); /** * 私有化构造方法,避免外部创建实例 */ private PrototypeManager(){} /** * 向原型管理器里面添加或是修改某个原型注册 * @param prototypeId 原型编…
如果一个词包含再另一个词的前面(前缀),是一对前缀,求一共有多少对 *解法:STL万岁 #include<string>:https://www.cnblogs.com/SZxiaochun/p/6699450.html #include <iostream> #include <cstdio> #include <string> #include <algorithm> using namespace std; #define SZ 50010…
数组 数组是值类型,因此改变副本的值,不会影响到本身 数组的定义:var 变量名 [元素数量] T 变量名(符合标识符要求即可) 元素数量(整型,可以是const中的值) T(可以是任意基本类型,包括数组本身,当类型为数组时,可以实现多维数组) var a [5]int 和 var a [10]int 是不同的类型 定义一个字符串数组,然后赋值: var team [3]string team[0] = "hammer" team[1] = "soldier" te…
当我写下Map<String,Object> map = new HashMap<>();我到底在写什么? 我什么时候会写HashMap? 一个函数同时需要返回 多种 状态的情况 举例:一个列表有100个数据,一个函数对该列表进行处理,并将该列表的数据划分为A,B,C 3部分,此时函数的返回值就适用用map 当需要保存键值对时 HashMap的实现是什么? 数组 + linkedList + 红黑树 容量阈值 都是指的HashMap中实际存放数据的数组的容量阈值 我该怎么写Hash…
热爱前端的17号诶 积跬步以致千里 积怠惰以致深渊 博客园 首页 新随笔 联系 管理 随笔 - 58  文章 - 2  评论 - 65 最新数组方法(包括es6) for...of 是 ES6 新引入的循环,用于替代 for..in 和 forEach() ,并且支持新的迭代协议.它可用于迭代常规的数据类型,如 Array . String . Map 和 Set 等等. 整理目前所用过的数组方法,学习了新增的es6方法. 1 arr.push() 从后面添加元素,返回值为添加完后的数组的长度…
前言 C++ Primer Plus读书笔记(三)复合类型 中已经简单介绍过vector是什么,这个系列主要是介绍STL特性. 声明 vector<ElemType> c; //创建一个空的vector vector<ElemType> c1(c2); //创建一个vector c1,并用c2去初始化c1 vector<ElemType> c(n) ; //创建一个含有n个ElemType类型数据的vector; vector<ElemType> c(n,e…
如果语法中大量使用if...else语句会造成代码臃肿,if语句C++语法中switch...case中case只能是整形变量,这里提供了一种思路,用map方法使健与值对应,这样字符串string类型与int型便对应上了,便可以实现匹配string. #include <iostream> #include <map> using namespace std; void FUNC_SetParam(int *outputValue, const string controlPara…
摘要:在Apollo 中,配置String.Map和List等类型的信息,同时设置默认值. 综述   随着业务需求的变更,需要在Apollo中配置一个Map<String, List>类型的变量用于标志客户信息,诸如住址.手机号和身份证号码等,而通常需要配置的就是简简单单的String.Integer等类型变量,故这里梳理一下配置String.Map和List等类型信息的方法,提升产出比. String   Apollo配置中心设置String的方法: apollo.wiener.strDem…
在linux用gdb或者cgdb计较不爽的地方是无法打印STL的东西,所有啊去网上找了找解决方案https://www.douban.com/note/182826844/?qq-pf-to=pcqq.c2c 本帖把怎么配置这个东西写出了,万一以后忘了,可以回头找找. 首先是下载gdb文件 https://sourceware.org/gdb/wiki/STLSupport    ------>找到网页里面的  然后点击进去下载stl_views_1.0.3.gdb 接下来把这个东西当到linu…