Java如何实现通过键盘输入一个数组


Posted in Java/Android onFebruary 15, 2022

如何通过键盘输入一个数组

有时候在编写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]+" ");//打印出来
}

通过这样我们就能通过键盘输入,结果如下:

Java如何实现通过键盘输入一个数组

第二种方法:(限制输入的个数)

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如何实现通过键盘输入一个数组

以上为个人经验,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Java/Android 相关文章推荐
Java方法重载和方法重写的区别到底在哪?
Jun 11 Java/Android
java Nio使用NioSocket客户端与服务端交互实现方式
Jun 15 Java/Android
总结Java对象被序列化的两种方法
Jun 30 Java/Android
swagger如何返回map字段注释
Jul 03 Java/Android
Java生成日期时间存入Mysql数据库的实现方法
Mar 03 Java/Android
Java详细解析==和equals的区别
Apr 07 Java/Android
JAVA springCloud项目搭建流程
May 11 Java/Android
Android 中的类文件和类加载器详情
Jun 05 Java/Android
Android开发手册自定义Switch开关按钮控件
Jun 10 Java/Android
SpringBoot使用AOP实现统计全局接口访问次数详解
Jun 16 Java/Android
Java中的Kafka为什么性能这么快及4大核心详析
Sep 23 Java/Android
Java结构型设计模式之组合模式详解
Sep 23 Java/Android
Java实现给Word文件添加文字水印
Feb 15 #Java/Android
SSM项目使用拦截器实现登录验证功能
Jan 22 #Java/Android
利用Sharding-Jdbc进行分库分表的操作代码
关于MybatisPlus配置双数据库驱动连接数据库问题
Jan 22 #Java/Android
JavaCV实现照片马赛克效果
Jan 22 #Java/Android
maven依赖的version声明控制方式
深入浅出讲解Java8函数式编程
Jan 18 #Java/Android
You might like
快速开发一个PHP扩展图文教程
2008/12/12 PHP
php模拟asp中的XmlHttpRequest实现http请求的代码
2011/03/24 PHP
PHP去掉从word直接粘贴过来的没有用格式的函数
2012/10/29 PHP
php的闭包(Closure)匿名函数初探
2016/02/14 PHP
JavaScript去除空格的几种方法
2006/10/03 Javascript
FormValidate 表单验证功能代码更新并提供下载
2008/08/23 Javascript
Javascript 读书笔记索引贴
2010/01/11 Javascript
基于jQuery试卷自动排版系统
2010/07/18 Javascript
js的写法基础分析
2011/01/17 Javascript
js自定义方法通过隐藏iframe实现文件下载
2013/02/21 Javascript
JavaScript让Textarea支持tab按键的方法
2015/06/26 Javascript
Node.js console控制台简单用法分析
2019/01/04 Javascript
ES6基础之解构赋值(destructuring assignment)
2019/02/21 Javascript
vue实现标签云效果的方法详解
2019/08/28 Javascript
ES6学习笔记之字符串、数组、对象、函数新增知识点实例分析
2020/01/22 Javascript
详解JavaScript数据类型和判断方法
2020/09/04 Javascript
VUE和Antv G6实现在线拓扑图编辑操作
2020/10/28 Javascript
如何将Node.js中的回调转换为Promise
2020/11/10 Javascript
vue 数据操作相关总结
2020/12/17 Vue.js
python提取内容关键词的方法
2015/03/16 Python
python中redis的安装和使用
2016/12/04 Python
利用Python生成文件md5校验值函数的方法
2017/01/10 Python
Python3下错误AttributeError: ‘dict’ object has no attribute’iteritems‘的分析与解决
2017/07/06 Python
python递归打印某个目录的内容(实例讲解)
2017/08/30 Python
Python中pow()和math.pow()函数用法示例
2018/02/11 Python
windows下python和pip安装教程
2018/05/25 Python
Python3.5迭代器与生成器用法实例分析
2019/04/30 Python
Python3内置模块之json编解码方法小结【推荐】
2020/12/09 Python
初次部署django+gunicorn+nginx的方法步骤
2019/09/11 Python
python飞机大战pygame游戏之敌机出场实现方法详解
2019/12/17 Python
Python IDLE或shell中切换路径的操作
2020/03/09 Python
关于爱情的广播稿
2014/01/16 职场文书
2014党员干部四风问题对照检查材料思想汇报
2014/09/24 职场文书
2015年社区教育工作总结
2015/05/13 职场文书
导游词之桂林山水
2019/09/20 职场文书
springboot读取nacos配置文件
2022/05/20 Java/Android