本篇内容介绍了“Java怎么实现通过键盘输入一个数组”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
有时候在编写Jave的时候需要键盘输入一个数组,本小白也是看了几篇博客后才知道了如何在自己的程序中进行键盘输入,直接上代码:
System.out.println(“请输入几个数并用逗号隔开:”); Scanner sc = new Scanner(System.in); String str = sc.next().toString();//定义一个字符str用于在输入数后面 String[] arr = str.split(",");//字符串数组,存放逗号"," int[] b = new int[arr.length];//int 数组,长度为字符串数组的长度,用于控制数组长度 for(int j = 0; j<b.length;j++) { b[j] = Integer.parseInt(arr[j]);//录入数据到数组中 System.out.println(b[j]+" ");//打印出来 }
通过这样我们就能通过键盘输入,结果如下:
System.out.println(“请输入三个数:”); Scanner in = new Scanner(System.in); int[] b=new int[3]; for(int i=0;i<b.length;i++){ b[i]=in.nextInt(); }
顺便说明一下Scanner类中next()与nextLine()方法的区别:
next()与nextLine()区别很明确,next() 方法遇见第一个有效字符(不是空格和换行符)时,开始扫描,当遇见第一个分隔符或结束符(空格或换行符)时,结束扫描,获取扫描到的内容,也就是说使用next()方法获得的是不含空格和换行符的单个字符串。
而使用nextLine()时,则可以扫描到一行内容并作为一个字符串而被获取到。
package com.基础; import java.util.Scanner; public class 二分查找 { public static int rank(int key,int[] a) { //数组必须是有序的 int lo = 0; int hi = a.length-1; while(lo<=hi) { //被查找的建要么不存在,要么必然存在于a[lo..hi]之中 int mid = lo + (hi - lo)/2; if (key<a[mid]) hi = mid -1; else if (key>a[mid]) lo = mid +1; else return mid; } return -1; } public static void main(String[] args) { Scanner in = new Scanner(System.in); System.out.println("请输入一行数组:");//从键盘接收数据, String str = in.next().toString();//输入当成字符串,数之间用“,”隔开 String[] arr = str.split(",");//以“,”把字符串分成数组 int[] b = new int[arr.length];//创建一个arr数组长度的数组 for(int j = 0;j<b.length;j++) { b[j] = Integer.parseInt(arr[j]); //把arr数组数赋值到b数组中 } System.out.println("请输入要查询的数:"); int key = in.nextInt(); int position = rank(key,b); if(position == -1) { System.out.println("查找的是"+key+",序列中没有该数!"); }else { System.out.println("查找的是"+key+"找到的位置为:"+position); } } }
“Java怎么实现通过键盘输入一个数组”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注亿速云网站,小编将为大家输出更多高质量的实用文章!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。