True True True True
我创建了一个包含char节点的列表,它只包含for(int i=1;i<list.size();i++)
{
if (x.nextNode!=null)
{
if (x.data=='C')
{
x.data='G';
} else if (x.data=='G') {
x.data='C';
} else if (x.data=='A') {
x.data='T';
} else if (x.data=='T') {
x.data='A';
}
}
x=x.nextNode;
}
和一个循环,它检查列表的每个节点并对其进行更改。 G应更改为C,C应更改为G,A应更改为T,T应更改为A.
我的问题是每个A G C T
项都会更改,但列表的最后一个节点除外。我应该如何编辑此代码以更改最后一个节点?
答案 0 :(得分:1)
您从1
开始,显然正在跳过一个节点。所以要遍历整个LinkList
(似乎)你应该从0
for(int i=0;i<list.size();i++)
// ^
更新:当if (x.nextNode!=null)
为false
时,表示您已到达最后一个节点。
if (lastNode.nextNode!=null)
将为false
,因此不会执行任何操作,因此要执行最后一个节点,请使用
if (x!=null)