当前位置: 首页 > 知识库问答 >
问题:

hasnext hang如何更正此错误[重复]

姜奇
2023-03-14
import java.util.Arrays;
import java.util.Scanner;

public class Sort {

    public static void main(String[] args) {
        String temp = "";
        String a ="";

        String[] New;

        Scanner keyboard = new Scanner(System.in);
        //String s1 = new String(keyboard.nextLine());

        System.out.println("Please write your elements.");

        while(keyboard.hasNext()){          
            String currentString = keyboard.next();
            if(currentString.equals(" ")){
                System.out.println("Bye");
            }
            a += (currentString.charAt(0) + "").toUpperCase() + currentString.substring(1).toLowerCase()+",";
        }
        a = a.substring(0, a.length()-1);

        New = a.split(",");
        System.out.println("Your elements are" + Arrays.toString(New) + ".");

        for (int x = 1; x < New.length; x++) {
            for (int y = 0; y < New.length - x; y++) {
                if (New[y].compareTo(New[y + 1]) > 0) {
                    temp = New[y];
                    New[y] = New[y + 1];
                    New[y + 1] = temp;

                }
            }

        } for(int i=0;i<New.length;i++){
            System.out.println(New[i]);
        }
        /*System.out.println("In alphabethical order form is:");
        System.out.println(Arrays.toString(New));*/

    }
}

hasnext在infinite loop中已经搜索了stackowerflow但answers无法修复错误。请帮助我。这里是我的代码,请写出你的元素。

Fi press space和enter有一个问题。

线程“main”java.lang.StringIndexOutOfBoundsException中的Bye异常:字符串索引超出范围:aa.sort.main(sort.java:38)处的java.lang.String.SubString(未知源)处的-1

共有1个答案

滑文昌
2023-03-14

几件事。您应该使用HasNextLine()NextLine()而不是HasNext()Next()

更改后,while循环永远不会结束,因为您只需打印bye并继续循环。在打印bye后添加break语句。

if(currentString.equals(" ")){
    System.out.println("Bye");
    break;
}
 类似资料:
  • 我正在编程一个需要Hibernate技术的项目。我得到了堆栈痕迹,但我不知道如何修复它。有什么需要帮忙的吗? 这是我的堆栈跟踪,我得到了这两个错误: SLF4J:slf4j-api 1.6.x(或更高版本)与此绑定不兼容。SLF4J:您的绑定是1.5.5或更早版本。SLF4J:将绑定升级到1.6.x版本。或2.0.x 导入org.hibernate.hibernateException;导入org

  • 当我运行composer update时,我得到了这些错误,问题是我已经安装了PHP7,但我不知道为什么会得到这个错误(我使用的是docker-compose) 这是我的php版本

  • 我正在尝试向我的第一个github添加一个文件。com存储库。我在“git remote add origin”命令中拼错了用户名。如果我再次尝试正确执行,则会出现错误: 如何清除该值以便更正它?或者,我如何改变那里有什么?

  • 问题内容: 我在下一行出现错误。我正在做添加到jsonarray的过程。请帮我。 问题答案: 这是我在重新编程时经常遇到的错误。此异常的原因或细节非常清楚。不允许在迭代时修改集合(正在添加新元素)。至少不支持语法。 为了解决您的问题,我认为有两种方法很简单。 1)。而不是使用语句来循环,更好的方法是使用迭代器来避免ConcurrentModificationException。 2)。在循环播放时

  • 我发现了一个mysql创建表语法错误,希望有人能在我失去理智之前发现它。 错误1064(42000):您的SQL语法中有错误;查看与您的MySQL server版本相对应的手册,以了解在第2行“int not null auto_increment,Client_ID int not null,Start_Time varchar(5),star”附近使用的正确语法 mysql Ver 14.14