摘要:泛型编程是一种编程范式,它允许你编写具有通用性的代码,可以处理多种数据类型而不需要为每种类型单独编写代码。在许多编程语言中,泛型编程通过模板(如C++中的模板)或泛型(如Java和C#中的泛型)来实现。以下是一些...
泛型编程是一种编程范式,它允许你编写具有通用性的代码,可以处理多种数据类型而不需要为每种类型单独编写代码。在许多编程语言中,泛型编程通过模板(如C++中的模板)或泛型(如Java和C#中的泛型)来实现。以下是一些示例,说明如何通过泛型编程来存储和处理多种类型的数据:
使用C++模板
在C++中,你可以使用模板类创建一个可以存储多种类型的容器。例如:
```cpp
#include
#include
template
class MyContainer {
std::vector
public:
void addElement(const T& element) {
elements.push_back(element);
}
void displayElements() const {
for (const auto& elem : elements) {
std::cout << elem << " ";
}
std::cout << std::endl;
}
};
int main() {
// 存储整数
MyContainer
intContainer.addElement(1);
intContainer.addElement(2);
intContainer.displayElements();
// 存储字符串
MyContainer
stringContainer.addElement("Hello");
stringContainer.addElement("World");
stringContainer.displayElements();
return 0;
}
```
使用Java泛型
在Java中,你可以使用泛型类实现:
```java
import java.util.ArrayList;
import java.util.List;
public class MyContainer
private List
public void addElement(T element) {
elements.add(element);
}
public void displayElements() {
for (T elem : elements) {
System.out.print(elem + " ");
}
System.out.println();
}
public static void main(String[] args) {
// 存储整数
MyContainer
intContainer.addElement(1);
intContainer.addElement(2);
intContainer.displayElements();
// 存储字符串
MyContainer
stringContainer.addElement("Hello");
stringContainer.addElement("World");
stringContainer.displayElements();
}
}
```
使用C#泛型
在C#中,你可以创建泛型类如下:
```csharp
using System;
using System.Collections.Generic;
public class MyContainer
{
private List
public void AddElement(T element)
{
elements.Add(element);
}
public void DisplayElements()
{
foreach (var element in elements)
{
Console.Write(element + " ");
}
Console.WriteLine();
}
}
public class Program
{
public static void Main()
{
// 存储整数
MyContainer
intContainer.AddElement(1);
intContainer.AddElement(2);
intContainer.DisplayElements();
// 存储字符串
MyContainer
stringContainer.AddElement("Hello");
stringContainer.AddElement("World");
stringContainer.DisplayElements();
}
}
```
在这些示例中,泛型类`MyContainer