在Java的for循环结束时遇到了额外分号的概念问题

Ani*_*tta 3 java loops for-loop

我正在编写一个代码来在链表的末尾插入一个元素.但是,如果没有在结尾使用分号,我无法正确更新列表,这个分号的意义是什么,这对我的代码有何影响?

public void insertAtEnd() throws IOException {
        LinkedList node=new LinkedList();
        System.out.println("Enter an element");
        int value=Integer.parseInt(br.readLine());
        node.setData(value);
        LinkedList p,q;
        for(p=head; (q=p.getNext())!=null; p=q); 
            p.setNext(node);
    }
Run Code Online (Sandbox Code Playgroud)

Con*_*Del 7

分号表示在循环退出之前不会执行下面的语句.你的情况,循环将p带到列表的末尾(最后一个元素),然后下一个语句将其下一个值赋给新元素