四种编程语言常用函数对比表

四种编程语言常用函数对比表

基础输入输出函数

功能 Java Python C# C++
控制台输出 System.out.println() print() Console.WriteLine() cout <<
控制台输入 Scanner.nextLine() input() Console.ReadLine() cin >>
格式化输出 String.format() f-string String.Format() printf()

代码示例:

java 复制代码
// Java
System.out.println("Hello");
String input = scanner.nextLine();
String formatted = String.format("Value: %d", 10);
python 复制代码
# Python
print("Hello")
input_str = input("Enter: ")
formatted = f"Value: {10}"
csharp 复制代码
// C#
Console.WriteLine("Hello");
string input = Console.ReadLine();
string formatted = String.Format("Value: {0}", 10);
cpp 复制代码
// C++
cout << "Hello" << endl;
string input;
cin >> input;
printf("Value: %d\n", 10);

字符串操作函数

功能 Java Python C# C++
字符串长度 str.length() len(str) str.Length str.length()
拼接 str1 + str2 str1 + str2 String.Concat() str1 + str2
子字符串 str.substring() str[start:end] str.Substring() str.substr()
查找 str.indexOf() str.find() str.IndexOf() str.find()
分割 str.split() str.split() str.Split() 需要手动处理
大小写转换 str.toUpperCase() str.upper() str.ToUpper() 需要手动处理

代码示例:

java 复制代码
// Java
String str = "Hello";
int len = str.length();
String sub = str.substring(1, 3);
int pos = str.indexOf("e");
python 复制代码
# Python
str = "Hello"
len_str = len(str)
sub = str[1:3]
pos = str.find("e")
csharp 复制代码
// C#
string str = "Hello";
int len = str.Length;
string sub = str.Substring(1, 2);
int pos = str.IndexOf("e");
cpp 复制代码
// C++
string str = "Hello";
size_t len = str.length();
string sub = str.substr(1, 2);
size_t pos = str.find("e");

数组/集合操作

功能 Java Python C# C++
创建数组 new int[5] [1,2,3] new int[5] int arr[5]
列表长度 list.size() len(list) list.Count vector.size()
添加元素 list.add() list.append() list.Add() vector.push_back()
排序 Collections.sort() list.sort() List.Sort() sort()
查找 list.contains() element in list list.Contains() find()

代码示例:

java 复制代码
// Java
List<Integer> list = new ArrayList<>();
list.add(1);
int size = list.size();
Collections.sort(list);
python 复制代码
# Python
list = [1, 2, 3]
list.append(4)
size = len(list)
list.sort()
csharp 复制代码
// C#
List<int> list = new List<int>();
list.Add(1);
int size = list.Count;
list.Sort();
cpp 复制代码
// C++
vector<int> vec;
vec.push_back(1);
size_t size = vec.size();
sort(vec.begin(), vec.end());

数学函数

功能 Java Python C# C++
绝对值 Math.abs() abs() Math.Abs() abs()
平方根 Math.sqrt() math.sqrt() Math.Sqrt() sqrt()
幂运算 Math.pow() pow() Math.Pow() pow()
四舍五入 Math.round() round() Math.Round() round()
最大值 Math.max() max() Math.Max() max()
随机数 Math.random() random.random() Random.Next() rand()

代码示例:

java 复制代码
// Java
double abs = Math.abs(-5.5);
double sqrt = Math.sqrt(16);
double power = Math.pow(2, 3);
python 复制代码
# Python
import math
abs_val = abs(-5.5)
sqrt_val = math.sqrt(16)
power_val = pow(2, 3)
csharp 复制代码
// C#
double abs = Math.Abs(-5.5);
double sqrt = Math.Sqrt(16);
double power = Math.Pow(2, 3);
cpp 复制代码
// C++
#include <cmath>
double abs_val = abs(-5.5);
double sqrt_val = sqrt(16);
double power_val = pow(2, 3);

文件操作函数

功能 Java Python C# C++
读取文件 Files.readAllLines() open().read() File.ReadAllText() ifstream
写入文件 Files.write() open().write() File.WriteAllText() ofstream
检查存在 Files.exists() os.path.exists() File.Exists() filesystem::exists()
删除文件 Files.delete() os.remove() File.Delete() remove()

代码示例:

java 复制代码
// Java
List<String> lines = Files.readAllLines(Paths.get("file.txt"));
Files.write(Paths.get("output.txt"), lines);
python 复制代码
# Python
with open("file.txt", "r") as f:
    content = f.read()
with open("output.txt", "w") as f:
    f.write("Hello")
csharp 复制代码
// C#
string content = File.ReadAllText("file.txt");
File.WriteAllText("output.txt", "Hello");
cpp 复制代码
// C++
ifstream input("file.txt");
string line;
getline(input, line);
ofstream output("output.txt");
output << "Hello" << endl;

日期时间函数

功能 Java Python C# C++
当前时间 LocalDateTime.now() datetime.now() DateTime.Now chrono::system_clock
格式化日期 DateTimeFormatter strftime() ToString() strftime()
时间差 Duration.between() timedelta TimeSpan chrono::duration

代码示例:

java 复制代码
// Java
LocalDateTime now = LocalDateTime.now();
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
String formatted = now.format(formatter);
python 复制代码
# Python
from datetime import datetime
now = datetime.now()
formatted = now.strftime("%Y-%m-%d")
csharp 复制代码
// C#
DateTime now = DateTime.Now;
string formatted = now.ToString("yyyy-MM-dd");
TimeSpan diff = end - start;
cpp 复制代码
// C++
#include <chrono>
auto now = chrono::system_clock::now();
time_t time = chrono::system_clock::to_time_t(now);

异常处理

功能 Java Python C# C++
抛出异常 throw new Exception() raise Exception() throw new Exception() throw exception()
捕获异常 try-catch try-except try-catch try-catch
最终操作 finally finally finally 无直接对应

代码示例:

java 复制代码
// Java
try {
    int result = 10 / 0;
} catch (ArithmeticException e) {
    System.out.println("Error: " + e.getMessage());
} finally {
    System.out.println("Cleanup");
}
python 复制代码
# Python
try:
    result = 10 / 0
except ZeroDivisionError as e:
    print(f"Error: {e}")
finally:
    print("Cleanup")
csharp 复制代码
// C#
try {
    int result = 10 / 0;
} catch (DivideByZeroException e) {
    Console.WriteLine($"Error: {e.Message}");
} finally {
    Console.WriteLine("Cleanup");
}
cpp 复制代码
// C++
try {
    int result = 10 / 0;
} catch (const exception& e) {
    cout << "Error: " << e.what() << endl;
}

类型转换函数

功能 Java Python C# C++
字符串转数字 Integer.parseInt() int() int.Parse() stoi()
数字转字符串 String.valueOf() str() ToString() to_string()
类型检查 instanceof isinstance() is typeid()

代码示例:

java 复制代码
// Java
int num = Integer.parseInt("123");
String str = String.valueOf(123);
boolean check = obj instanceof String;
python 复制代码
# Python
num = int("123")
str_val = str(123)
check = isinstance(obj, str)
csharp 复制代码
// C#
int num = int.Parse("123");
string str = 123.ToString();
bool check = obj is string;
cpp 复制代码
// C++
int num = stoi("123");
string str = to_string(123);
bool check = typeid(obj) == typeid(string);

关键差异总结

特性 Java Python C# C++
语法风格 verbose 简洁 类似Java 灵活但复杂
内存管理 自动GC 自动GC 自动GC 手动/RAII
性能 较高 较低 较高 最高
学习曲线 中等 简单 中等 陡峭
主要用途 企业应用 数据科学/Web Windows应用 系统/游戏

这个对比表展示了四种语言在常用功能上的语法差异,帮助开发者在不同语言间切换时快速找到对应的函数和方法。

相关推荐
未若君雅裁12 分钟前
JVM基础总结
java·jvm·java-ee
p***434816 分钟前
JavaScript数据分析实战
开发语言·javascript·ecmascript
星释17 分钟前
Rust 练习册 66:密码方块与文本加密
java·前端·rust
q***318923 分钟前
Spring Boot 实战篇(四):实现用户登录与注册功能
java·spring boot·后端
Learn Beyond Limits34 分钟前
Correlation vs Cosine vs Euclidean Distance|相关性vs余弦相似度vs欧氏距离
人工智能·python·神经网络·机器学习·ai·数据挖掘
专注于大数据技术栈34 分钟前
java学习--==和equals
java·python·学习
鲸沉梦落39 分钟前
JVM类加载
java·jvm
carry杰40 分钟前
esayExcel导出图片
java·easyexcel 图片
蓝天智能44 分钟前
立体字型效果的Qt QSS实现
开发语言·qt
艾莉丝努力练剑44 分钟前
【C++:哈希表】从哈希冲突到负载因子:熟悉哈希表的核心机制
开发语言·c++·stl·散列表·哈希表·哈希·映射