从键盘输入数组的元素,并对数组排序

    技术2022-05-11  144

    import java.io.*;

    public class IOStreamDemo{ public static void main(String[] args) throws IOException {    /*BufferedReader br = new BufferedReader(new InputStreamReader(System.in));  String str = br.readLine();  int n = Integer.parseInt(str);*/        BufferedReader stdin = new BufferedReader(new InputStreamReader(System.in));  System.out.print("Enter the length of the array:");   String str = stdin.readLine();;   System.out.println(str);  int n = Integer.parseInt(str);    int[] a = new int[n];  System.out.println("Enter "+n+" numbers to initiate the array:");  for(int i=0;i<n;i++)  {   String s = stdin.readLine();//可以直接利用变量stdin而不用再重新定义。   a[i] = Integer.parseInt(s);//强制类型转换  }    System.out.println("The array is:");  for(int i=0;i<n;i++)  {   System.out.println("a["+i+"]="+a[i]);  }      int[] b;     java.util.Arrays.sort(a);     b = a;  System.out.println("After sorted:");  for(int i=0;i<n;i++)  {   System.out.println("b["+i+"]="+b[i]);  }   }}

    **********************************************************

    关于数组的初始化(从键盘读入value值)BufferedReader br = new BufferedRead(new InputStreamReader(System.in));String str = br.readLine();  //读入的是一个char类型的字符int i = Integer.parseInt(str);//将str强制转化成int型的。

    或者:InputStreamReader isr = new InputStreamReader(System.in);BufferedReader br = new BufferedReader(isr);String str;str = br.readLine();int i;i = Integer.parseInt(str);

    下面数组的元素赋值可以利用一个循环语句分别对其赋值。对键盘的操作语句基本上同上面一样~这是最基本的数组元素的初始化问题,以后经常用到,应该很熟练的掌握。还有一个很常用的数组的排序函数:java.util.Arrays.sort(a);//对已经初始化的数组a进行排序,排序结果还是存在a中,不好的地方是破坏了原来的数组a。当遇到类似按学生成绩排名次的问题时候还要另当考虑~


    最新回复(0)