您好,登录后才能下订单哦!
密码登录
            
            
            
            
        登录注册
            
            
            
        点击 登录注册 即表示同意《亿速云用户服务条款》
        本篇内容介绍了“Java算法题输入问题实例分析”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
直接使用普通的Scanner输入数据范围,然后使用for循环输入后续数据。
例如:
Scanner scanner = new Scanner(System.in);
//输入数据的范围
int n = scanner.nextInt();
for(int i = 0;i < n;i++){
    
    arrays[i] = scanner.nextInt();
}使用while循环,当输入结束符的时候退出循环
Scanner scanner = new Scanner(System.in);
//假设使用"0"作为结束符
//无限循环,在循环中和结束符进行比较,相同则停止循环
while(true){
    String str = scanner,nextLine();
    if(str == "0"){
        break;
    }
    //没有结束,那么对str进行处理
    
}
//判断输入的数据是否为"0",为"0"则停止循环,不为"0"则继续循环
while(!scanner.hasNext("0")){
    String str = scanner.nextLine();
    //对str进行处理,只要输入不为"0",就可以一直循环下去
}此时不能在使用Scanner进行输入,因为无法结束,我们需要使用(BufferedReader)字符缓冲输入流来进行输入。
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
while((str = br.readLine()) != null){
            //当读入数据的下一行不为空时,进行循环,这里对str进行处理
        }next()输入不会包含空格以后的数据,只会输入第一个空格前的字符,nextLine()输入可以包括空格,只有遇见分隔符(例如回车)才会结束
Scanner scanner = new Scanner(System.in); String str1 = scanner.next();//输入hello world String str2 = Scanner.nextLine();//输入hello world System.out.println(str1);//输出hello System.out.println(str2);//输出hello world
没有对一行多数字做处理,处理方法和上述但行输入相同。
System.out.println("输入多行数字:");
        List<String> list = new ArrayList<>();
        String input = "";
        while (true) {
            input = sc.nextLine();
            if (!input.equals("q")) {
                list.add(input);
            }else {
                break;
            }
        }
        for (String s : list) {
            //只能转换一行一个数字,多个数字需要额外同上的操作
            //int intValue = Integer.valueOf(s);
            System.out.println(s);
        }“Java算法题输入问题实例分析”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注亿速云网站,小编将为大家输出更多高质量的实用文章!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。