c# - 泛型类不打印第二个参数
问题描述
我创建了一个通用类这是我的代码
using System;
public class Node<T>
{
T data;
Node<T> link;
public Node(T data, Node<T> link)
{
this.data = data;
this.link = link;
}
public void Write()
{
Console.WriteLine("Data : " + this.data , this.link);
}
}
class Program
{
static void Main()
{
Node<string> node1 = new Node<string>("Some", null);
Node<string> node2 = new Node<string>("Thing", node1);
node1.Write();
node2.Write();
//to write on the console
Console.ReadKey();
}
}
我只是很困惑,或者我的语法真的错了。请告诉我
所以我写了
node1.Write()
node2.Write()
输出应该是
节点1
一些
节点2
一些东西
我是对还是错??请赐教。
解决方案
HimBromBeere 不使用递归或覆盖该方法的答案的替代ToString
方法是将您的Write
函数更改为:
public void Write()
{
Console.Write("Data: ");
Console.Write($"{data}");
var next = link;
while(next != null)
{
Console.Write($", {link.data}");
next = next.link;
}
}
推荐阅读
- java - 毫秒未从 java new Date() 函数正确转换为带有时区的 postgres 时间戳
- python - 有没有办法使用 Python 使用 Selenium 向 firefox 控制台发送命令(如“:screenshot”)?
- winapi - 从 Win32_DiskDrive 获取 HDD MediaType
- java - 单核机器上的 CompletableFuture
- php - 为什么我在向 REST API 发出 HTTP 请求时收到“502 状态错误”?
- tensorflow - CNN(迁移学习)训练速度相当慢的原因可能是什么?
- linux - SELinux - 如何调用我的自定义界面?
- amazon-web-services - 利用ec2获取资源的iam用户名
- r - 根据周围的单元格填充单元格 R
- java - Spring Security - 使用带有 Auth0 预身份验证的自定义数据库授权