输入一串数字以不同数量的空格分割数字,输出最小的数

来源:互联网 发布:sql数据库文件怎么打开 编辑:程序博客网 时间:2024/05/16 14:22

今天早上来公司,逛CSDN的时候看到有人问这个,自己就写了写,应该是满足题意,可以解决问题。源码如下(思路在源码里面有注释):

package com.wonders;import java.util.ArrayList;import java.util.Collections;import java.util.List;import java.util.Scanner;public class NumberArrayTest {    public static void main(String[] args) {        System.out.println("请输入输一串数字以不同数量的空格分割的字符串:");        Scanner scanner  = new Scanner(System.in);        String str = scanner.nextLine();        int minNumber = printMinNumber(str);        System.out.println("最小的数字是: " + minNumber);    }    private static int printMinNumber(String str) {        //字符非空判断        if (str != null && !"".equals(str) ) {            //所有空格用,分隔或者其他符号(空格除外)            str = str.replaceAll(" ", ",");        }        //转为字符串        String[] ch = str.split(",");        //list用于将所有非空格的元素装进去        List<String> list = new ArrayList<String>();        //用于将所有数字元素装进去        List<Integer> numlist = new ArrayList<Integer>();        for (int i = 0; i < ch.length; i++) {            if (ch[i]!=null && !"".equals(ch[i])) {                list.add(ch[i]);            }        }        //判断list中是否全是数字        String regex = "^\\d+$";        for(int i=0;i<list.size() && list.size()>0;i++){            String num = list.get(i);            if (num.matches(regex)) {                numlist.add(Integer.parseInt(list.get(i)));            }        }        //对于numlist进行排序        Collections.sort(numlist);        return numlist.get(0);    }}
阅读全文
0 0
原创粉丝点击