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

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

基础输入输出函数

功能 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应用 系统/游戏

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

相关推荐
都叫我大帅哥7 分钟前
从Python到Java:为什么企业级Agent最终会选择Java?
java·ai编程
wanderist.20 分钟前
Lambda表达式在算法竞赛中的应用
java·开发语言·算法
zh路西法1 小时前
【10天速通ROS2-PX4无人机】(四) 关掉GPS和气压计,纯激光定位还能飞吗
c++·无人机·px4·ros2·卡尔曼滤波·fastlio2
chenment1 小时前
ComfyUI 自定义节点开发:从零扩展你的图像生成工作流
python·stable diffusion
海天鹰1 小时前
PHP上传文件
android·开发语言·php
yyds_yyd_100862 小时前
1464. 数组中两元素的最大乘积(2026.07.27)
数据结构·c++·算法·leetcode
腻害兔2 小时前
【若依项目-产品经理视角】RuoYi-Vue-Pro 源码拆解:IM 即时通讯模块,一个被低估的「全功能聊天系统」
java·前端·vue.js·产品经理·ai编程
互联网中的一颗神经元2 小时前
小白python入门 - 25. SQL 与表设计入门
数据库·python·sql
心念枕惊2 小时前
.NET CORE 授权进阶-角色、策略与动态权限实现
java·前端·.netcore
Yeauty3 小时前
渲染成图再 CLI 拼接,还是进程内直推?Rust 帧到视频的两条路
开发语言·rust·音视频