gpt4 book ai didi

java - 尝试使用 Java 将用户输入按字母顺序排序,为什么此代码不起作用?

转载 作者:行者123 更新时间:2023-12-01 08:46:02 25 4
gpt4 key购买 nike

出于某种原因,当我尝试向用户询问名称以便将它们添加到列表中并按字母顺序对它们进行排序时,此代码不会打印任何内容。它甚至不会通过 while 循环,有人知道问题是什么吗?还有一个问题;如果用户在要求输入值时按下回车按钮,您如何执行某些代码,它会只是空吗?谢谢!

import java.util.Scanner;
import java.util.*;

public class project16u
{
public static void main(String[] args)
{
int n;
String input = "nothing";
String temp;
ArrayList<String> names = new ArrayList<String>();
Scanner s1 = new Scanner(System.in);
System.out.println("Enter all the names:");
while(!input.equals("done")){
input = s1.nextLine();
names.add(input);
}
for (int i = 0; i < names.size()-1; i++)
{

if (names.get(i).compareTo(names.get(i+1))>0)
{
temp = names.get(i);
names.add(i, names.get(i+1));
names.add(i+1, temp);
i=0;
}
}
System.out.print("Names in Sorted Order:");
for (int i = 0; i < names.size() - 1; i++)
{
System.out.print(names.get(i).toString() + ",");
}
System.out.print(names.get(names.size()-1));
}
}

最佳答案

add 在请求的索引处插入名称。因此,在您的情况下,列表中将有两个同名副本,而不是您想要的副本。

您可能想使用set

关于java - 尝试使用 Java 将用户输入按字母顺序排序,为什么此代码不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43031957/

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