Java vs c++ 字符串 vector ArrayList 迭代器数组比较
字符串
Java 和 c++ 都支持字符串,但在使用方面有所区别。
- 初始化,Java 的初始化方式比较简朴,= 后加上字符串即可。c++ 可以在变量后,使用括号进行多次重复或者进行赋值。除此之外,Java 可以两个字面量进行直接连接,而c++ 需要字面量另一边需要有一个字符串变量才可以。
- 取值方式不同,如果想获取字符串中的每一个字符。那么Java 只能用charAt 函数,或者转为char[] 然后利用迭代器进行遍历。c++ 可以直接使用迭代器,foreach,索引下标直接获取。
- 内容比较,Java 的内容比较使用equals 方法,而c++ 中可以直接使用==
Vector VS ArrayList
- 初始化,c++ 初始化方式又玩出了花。。。Java 可以使用collections 类进行初始化。
- 添加元素,vector 使用push_back()来添加元素,ArrayList使用add添加元素
- 获取元素,vector支持迭代器,foreach,下标索引获得,ArrayList使用get方法进行获取。
- vector 支持高效增长,所以可以不必为其指定容量大小,而ArrayList 在已知数据大小的情况下,最好指定大小
迭代器
迭代器的使用可以参照这篇,C++、Java、JavaScript中迭代器的用法
数组
- 初始化方式有所差别,Java可以int[] a或者 int a[] ,c++可以 int a[]
- c++的数组名,实际是地址,遍历的话,可以使用引用,指针,和下标