gpt4 book ai didi

java - 如何将用户输入的整数发送到 Java 中的链表?

转载 作者:行者123 更新时间:2023-11-30 08:55:01 24 4
gpt4 key购买 nike

我正在尝试编写代码让用户输入正整数并将它们发送到链表。用户输入应在输入负数后结束。此外,我在编写 isSorted boolean 方法时遇到问题,如果链表按递增顺序排序,该方法将返回 true,否则返回 false。

这是我目前唯一的代码

import java.util.*;
public class List {

public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.println("Please type positive integers one by one separated by a space.");
System.out.println("When you are done, please type a negative integer.");
int num = input.nextInt();

}


public boolean isSorted(){


if(){
return true;
}
else{
return false;
}
}
}

最佳答案

public void input() {
System.out.println("Please type positive integers one by one separated by a space.");
System.out.println("When you are done, please type a negative integer.");

LinkedList<Integer> ll = new LinkedList<>();

//System.in.available()

Scanner input = new Scanner(System.in);

int num;
while ( input.hasNextInt() ) {
int i = input.nextInt();
if (i >= 0) {
ll.add(i);
}
}

System.out.println(ll+" <-- ll"); //TODO remove debugging code

System.out.println(isSortedAccending(ll)+" <-- isSortedAccending(ll)");//TODO
}

这通过返回 false 来实现发现有问题的那一刻。

public static boolean isSortedAccending(List<Integer> list){
if (list.size() < 2) {
return true;
}

Integer previous = list.get(0);
for (Integer next : list) {
if (previous > next) {
return false;
}
}
return true;
}

输出:

Please type positive integers one by one separated by a space.
When you are done, please type a negative integer.
1
2
3
-1
[1, 2, 3] <-- ll
true <-- isSortedAccending(ll)

isSortedDecending()除了使用 < 外,看起来完全一样.

关于java - 如何将用户输入的整数发送到 Java 中的链表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29241109/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com