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

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

基础输入输出函数

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

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

相关推荐
OLOLOadsd1231 分钟前
基于Mask-RCNN和RegNetX的茎蛀虫检测识别系统详解
python
纪莫9 分钟前
技术面:如何让你的系统抗住高并发的流量?
java·redis·java面试⑧股
半路_出家ren13 分钟前
1.古典密码概述
python·网络安全·密码学·古典密码·加密方式
spencer_tseng28 分钟前
Unlikely argument type for equals(): JSONObject seems to be unrelated to String
java·equals
爱敲代码的小鱼40 分钟前
事务核心概念与隔离级别解析
java·开发语言·数据库
CJenny41 分钟前
Claude Code常用操作和使用方法
人工智能·python
小冷coding1 小时前
【Java】遇到微服务接口报错导致系统部分挂掉时,需要快速响应并恢复,应该怎么做呢?如果支付服务出现异常如何快速处理呢?
java·开发语言·微服务
星火开发设计1 小时前
二维数组:矩阵存储与多维数组的内存布局
开发语言·c++·人工智能·算法·矩阵·函数·知识
夜勤月1 小时前
彻底终结内存泄漏与悬挂指针:深度实战 C++ 智能指针底层原理与自定义内存池,打造稳如泰山的系统基石
开发语言·c++
一个处女座的程序猿O(∩_∩)O1 小时前
Nacos 中的 Namespace 深度解析:实现多租户隔离的关键机制
java