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 20 Java/Android
分析设计模式之模板方法Java实现
Jun 23 Java/Android
一篇文章带你复习java知识点
Jun 28 Java/Android
java设计模式--建造者模式详解
Jul 21 Java/Android
Java移除无效括号的方法实现
Aug 07 Java/Android
mybatis源码解读之executor包语句处理功能
Feb 15 Java/Android
解析探秘fescar分布式事务实现原理
Feb 28 Java/Android
spring cloud eureka 服务启动失败的原因分析及解决方法
Mar 17 Java/Android
剑指Offer之Java算法习题精讲二叉树专项训练
Mar 21 Java/Android
Java8利用Stream对列表进行去除重复的方法详解
Apr 14 Java/Android
Java实现扫雷游戏详细代码讲解
May 25 Java/Android
java实现web实时消息推送的七种方案
Jul 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
暴雪前总裁遗憾:没尽早追赶Dota 取消星际争霸幽灵
2020/03/08 星际争霸
php的hash算法介绍
2014/02/13 PHP
根据ip调用新浪api获取城市名并转成拼音
2014/03/07 PHP
php下pdo的mysql事务处理用法实例
2014/12/27 PHP
php json相关函数用法示例
2017/03/28 PHP
Yii框架实现记录日志到自定义文件的方法
2017/05/23 PHP
php无限级分类实现评论及回复功能
2019/02/18 PHP
php慢查询日志和错误日志使用详解
2021/02/27 PHP
符合W3C网页标准的iframe标签的使用方法
2007/07/19 Javascript
jquery高效反选具体实现
2013/05/05 Javascript
JQuery的AJAX实现文件下载的小例子
2013/05/15 Javascript
JS实现淘宝支付宝网站的控制台菜单效果
2015/09/28 Javascript
JavaScript中eval函数的问题
2016/01/31 Javascript
JavaScript中用let语句声明作用域的用法讲解
2016/05/20 Javascript
最全面的百度地图JavaScript离线版开发
2016/09/10 Javascript
js数组去重的hash方法
2016/12/22 Javascript
关于在vue-cli中使用微信自动登录和分享的实例
2017/06/22 Javascript
微信小程序实现登录注册tab切换效果
2020/12/29 Javascript
JavaScript实现拖拽和缩放效果
2020/08/24 Javascript
Python的Django框架中的Context使用
2015/07/15 Python
Python字符串拼接、截取及替换方法总结分析
2016/04/13 Python
由浅入深讲解python中的yield与generator
2017/04/05 Python
TensorFlow变量管理详解
2018/03/10 Python
win10下python3.5.2和tensorflow安装环境搭建教程
2018/09/19 Python
Django框架用户注销功能实现方法分析
2019/05/28 Python
python框架django项目部署相关知识详解
2019/11/04 Python
解决python 找不到module的问题
2020/02/12 Python
Python通过两个dataframe用for循环求笛卡尔积
2020/04/29 Python
基于html5 canvas实现漫天飞雪效果实例
2014/09/10 HTML / CSS
Hertz荷兰:荷兰和全球租车
2018/01/07 全球购物
Ray-Ban雷朋太阳眼镜英国官网:Ray-Ban UK
2019/11/23 全球购物
会计专业的自荐信
2013/12/12 职场文书
《小小雨点》教学反思
2014/02/18 职场文书
2019运动会广播加油稿汇总
2019/08/21 职场文书
Feign调用全局异常处理解决方案
2021/06/24 Java/Android
Java后端 Dubbo retries 超时重试机制的解决方案
2022/04/14 Java/Android