栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

2021-10-08 Java与C++的比较笔记

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

2021-10-08 Java与C++的比较笔记

文章目录
  • 内容介绍
  • 8 Oct. 2021
    • 字符串截取
    • 判断是否存在某个元素
  • 11 Oct. 2021
    • 数组定义
    • 续行符
    • 两个字符串相加

内容介绍

最近在刷LeetCode, 练习Java的同时复习C++。然后发现Java和C++极其容易混淆,比如substring和substr这种。因此,有必要写个笔记方便以后回顾。文章结构将以日期分割。

8 Oct. 2021 字符串截取

C++:substr(起始下标)、substr(起始下标, 子串长度)
参考内容:C++ 中字符串查找、字符串截取、字符串替换

string str = "Morning everyone.";
string sub1 = str.substr(1);
string sub2 = str.substr(1, 3);

Java:substring(起始下标)、substring(起始下标,截止下标)
参考内容:Java截取(提取)子字符串(substring())

String str = "Morning everyone.";
String sub1 = str.substring(1);
String sub2 = str.substring(1, 1+3);
判断是否存在某个元素

C++:find()

string str = "a";
set strSet;
if(strSet.find(str) == strSet.end()){
    strSet.insert(str);
}
vector result;
if(find(result.begin(), result.end(), str) == result.end()){
	result.push_back(str);
}

Java:contains()
参考内容:java 如何判断集合中是否存在某个元素——contains()

String str = "a";
Set strSet = new HashSet();
if(!strSet.contains(str)){
	strSet.add(str);
}
List result = new ArrayList();
if(!result.contains(str)){
	result.add(str);
}
11 Oct. 2021 数组定义

C++定义数组,中括号必须放在变量后面。
参考内容C++数组初始化方法

int nums1[10];
int nums2[] = {1,2};
string strs[] = {"One", "Two"}

Java定义数组,中括号放在前面后面都可以。但不能指定数组长度。
参考内容:java 数组的定义(声明)方法
Java中数组的定义方式

int nums1[]; 
int[] nums2; //推荐使用
int[] nums3 = new int[10]; // 指定数组长度
String[] strs = {"Jan", "Feb", "Mar"};
续行符

当代码一行写不下时,C++可以使用续行符""也可以直接换行。

string str = "abcd, 
efgh";
string str[] = {"a", "b", // ""可有可无
				"c", "d"};

而Java没有续行符,直接换行。

String str = "abcd" + 
"efgh";
String str[] {"a", "b",
			  "c","d"};
两个字符串相加

C++两个常量字符串相加会报错,因为“a"和"b"都是const char[]类型,而不是string。
参考资料:为什么标准C++中两个直接字符串常量不能相加

string str = "a“ + ”b"; // 报错
string a = "";
string str1 = a + "a"+"b"; // 正常执行

Java两个常量字符串可以正常相加。

String str = "a“+”b";
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/311548.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号