我试图使用类似于使用链表的StringBuilder
,我想我在我的构造函数中的某个地方搞乱了。任何人都可以在这里找到问题?我相信问题在于我如何移动到下一个节点。链接的字符串列表
Node类:
private class CNode
{
private char data;
private CNode next;
private CNode(char c)
{
data = c;
next = null;
}
private CNode(char c, CNode nextNode)
{
data = c;
next = nextNode;
}
}
构造:
private CNode firstNode;
private int length;
public MyString(String s)
{
if(s == null)
{
this.length = 0;
this.firstNode = null;
}
else if(s.length() == 1)
{
this.length = 1;
this.firstNode.data = s.charAt(0);
this.firstNode.next = null;
}
else
{
this.length = s.length();
CNode node = null;
CNode nextNode = null;
this.firstNode = new CNode(s.charAt(0), node);
for(int i = 1; i < s.length(); i++)
{
node = new CNode(s.charAt(i), nextNode);
node = node.next;
}
}
}
用'this.firstNode = new CNode(s.charAt(0),null)替换后两行;'? – Nealon
@ Nealon-那绝对应该有帮助! – templatetypedef
优秀。仍然没有解决,但解决了其他可能的问题。谢谢 – Nealon