JAVA 连续输入数字问题

import java.util.Scanner;
import static java.lang.Math.sqrt;

public class no_2 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.print("输入数字,用“ ”隔开");
        String st = sc.nextLine();
        st=st.trim();
        String [] arr = st.split(" ");
        int[] shu = new int[1000];
        int[] zshu = new int[1000];
        int[] fshu = new int[1000];
        int i;
        int n=0 , m=0 , z = 0, zmax, zmin, fmax, fmin;
        double aver;
        double s;
        double S=0;
        for (i = 0; i < shu.length; i++) {
            shu[i] = Integer.parseInt(arr[i]);
            while( shu[i]!=0){
                for (i = 0; i < shu.length; i++) {
                    if (shu[i] > 0) {
                        zshu[n] = shu[i];         //正数数组
                        n=n+1;                    //正数的个数
                    }
                    else if (shu[i] < 0) {
                        fshu[m] = shu[i];         //构造负数数组
                        m=m+1;                    //负数的个数
                    }
                    z += shu[i];                 //和
                }
            }
        }
        aver = z / (m+n);                     //平均数
        zmax = zmin = zshu[0];
        fmax = fmin = fshu[0];
        for (i = 0; i < n; i++) {              //第(2)题
            if (zshu[i] > zmax) zmax = zshu[i];    //最大正数
            if (zshu[i] < zmin) zmin = zshu[i];    //最小正数
        }
        for (i = 0; i < m; i++) {               //第(3)题
            if (fshu[i] > fmax) fmax = fshu[i];    //最大负数
            if (fshu[i] < fmin) fmin = fshu[i];    //最小负数
        }
        for (i = 0; i < shu.length; i++) {        //第(5)题
            s=sqrt(shu[i]-aver);
            s=s*s*s*s;
            S+=s;
        }
        S/=shu.length;
        System.out.println("正数个数="+m);
        System.out.print("\n 负数个数="+n);
        System.out.print("\n 最大正数="+zmax);
        System.out.print("\n 最小正数="+fmin);
        System.out.print("\n 最大负数="+fmax);
        System.out.print("\n 最小负数="+fmin);
        System.out.print("\n 方差="+S);
    }
}

就是IDEA上显示 m和n恒为0,挺头秃的,还求大佬帮帮忙

看: https://blog.csdn.net/weixin_44538399/article/details/89083619  

System.out.println("正数个数="+m);

改为:

System.out.println("正数个数=", m);