java输入数字存入数组(带字符检测)
8.20更新:
这一次看到了hasNextInt,那么输入方式就可以进行改变了
做一个循环判断,对就输入错就重新来,根本不需要对字符进行检测 ORZ...
if (scan.hasNextInt()) {这一次是上次字符检测是否全为数字的增强版。欢迎各位朋友或大神指出不足之处。
int num = scan.nextInt();
System.out.println("输入的数据为:" + num);
}
hasNextInt()返回值是true和false,用于if判断即可
代码排版总有点问题,如果有需要,可通过博客园的代码进行使用:
https://www.cnblogs.com/bkytep/p/9495093.html
package com.hw.h817;
import java.util.Scanner;
public class Check {
public static void main(String[] args){
Scanner s =new Scanner(System.in);
//把pre和str在外面定义,如果在循环中定义会出错
String[] two =new String[6];
String pre;
int[] str =new int[6];
int count = 0; //用于退出循环
while(true){
System.out.println("请依次输入6个数");
count = 0; //如果输入字符不是数字时,从if中出来,重新计数
for(inti=0; i<6; i++){
pre = s.next(); //接收字符串
if(!(pre.matches("\\d+"))) {//非(pre全为数字)
System.out.println("输入的" + pre + "不是数字,请重新输入");
break; //这个退出的是for循环,退出后会再次执行while循环,重新输入数字}
else {
str[i] = Integer.parseInt(pre); //把数字型字符串转换为int型数字}
count++; //每执行一次数据输入后,count才会+1}
if(count==6)break; //这个退出的是while循环}
for(int i=0; i<6; i++){//输出打印数字
if(i==0){
System.out.print(str[i]);
}
else{
System.out.print(","+str[i]);
}
}
}
【java输入数字存入数组(带字符检测)】}
推荐阅读
- JAVA(抽象类与接口的区别&重载与重写&内存泄漏)
- 事件代理
- Java|Java OpenCV图像处理之SIFT角点检测详解
- Node.js中readline模块实现终端输入
- java中如何实现重建二叉树
- 数组常用方法一
- 最喜6.8.9
- 【Hadoop踩雷】Mac下安装Hadoop3以及Java版本问题
- Java|Java基础——数组
- RxJava|RxJava 在Android项目中的使用(一)