如何使其更加简洁?(不应该很难)



嗨:(我对java很陌生,找不到解决方案。。。我有这个代码,它非常重复,我需要重复这个过程好几次。我能用某种循环使它更简洁吗?

System.out.println("enter grade 1:");
Node node1 = new Node(x.nextInt());
Node head = node1;
System.out.println("enter grade 2:");
Node node2 = new Node(x.nextInt());
node2.next = head;
head = node2;
System.out.println("enter grade 3:");
Node node3 = new Node(x.nextInt());
node3.next = head;
head = node3;

只需使用类似的循环

Scanner scanner = new Scanner(System.in);
Node head;
int index = 0;
while (scanner.hasNextLine()) {
System.out.println("enter grade " + (++index) + ":");
Node node = new Node(scanner.nextInt());
node.next = head;
head = node;
}

此代码可能适用于您:

public class Node {
int grade ;
Node next=null;
Node(int grade){
this.grade=grade;
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
Node head =null;
int index = 1;
int gradeCount = 8;
do {
System.out.println("enter grade " + (index++) + ":");
Node node = new Node(scanner.nextInt());
node.next = head;
head = node;
}
while(index!=gradeCount+1);
}
}

在这里,我使用了一个do-while循环,该循环将退出,直到index变量达到8

相关内容

最新更新