【问题标题】:Loop condition for accessing all of a List's Nodes访问列表所有节点的循环条件
【发布时间】:2017-11-08 18:19:35
【问题描述】:
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;
}

我创建了一个包含 char 节点的列表,其中仅包含 A G C T 和一个循环,该循环检查列表中的每个节点并对其进行更改。 G改成C,C改成G,A改成T,T改成A。

我的问题是除了列表的最后一个节点之外,每个Node.char 项目都会更改。我应该如何编辑此代码以同时更改最后一个节点?

【问题讨论】:

    标签: java list data-structures nodes


    【解决方案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)
    

    【讨论】:

    • 仍然,最后的节点字符没有改变
    猜你喜欢
    • 2016-12-22
    • 2021-09-05
    • 2010-11-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多