java如何使用流对数组排序

在学会了java中io流的使用后,我们对于数组的排序,又多了一种使用方法。大家知道流处理数据的效率是比较理想的,那么在具体操作数组排序上,很多人对于排序的方法还没有明确。下面我们先java使用流对数组排序的思路为大家进行梳理,然后带来对应的实例代码方法。

1、排序思路

(1)从字符输入流中读取文本,缓冲各个字符,从而实现字符、数组和行的高效读取

(2)询问用户需要多少位数的数组

(3)转换为数字类型

(4)将用户输入数字存入数组

(5)把数组按排序需求并打印出来

2、实例

publicstaticvoidmain(String[]args){
//TODOAuto-generatedmethodstub
try{
//数组a()的数字个数,由用户输入决定
InputStreamReaderisr=newInputStreamReader(System.in);
//从字符输入流中读取文本,缓冲各个字符,从而实现字符、数组和行的高效读取
BufferedReaderbfr=newBufferedReader(isr);
//询问用户需要多少位数的数组
System.out.println("请输入需要多少位数的数组:\n");
Stringa1=bfr.readLine();
//将a1转换为数字类型
inti=Integer.parseInt(a1);
//提示用户输入数组数据
System.out.println("请向数组中存入"+i+"个数据:\n");
//将用户输入数字存入数组
Integer[]a=newInteger[i];
for(intj=0;j<i;j++){
System.out.println("第"+(j+1)+"个:");
a[j]=newInteger(bfr.readLine());
}
//把数组按升序排序并打印出来
for(intk=1;k<i;k++){
for(intm=0;m<(i-k);m++){
if(a[m]>a[m+1]){
//Integertemp=newInteger(0);
inttemp=0;
temp=a[m];
a[m]=a[m+1];
a[m+1]=temp;
}
}
}
//输出排序后的数组
System.out.println("排序后\n");
for(intt=0;t<=i;t++){
System.out.println(a[t]);
}

}catch(Exceptione){
//TODO:handleexception
e.printStackTrace();
}
}

}
原文来自:https://www.py.cn
© 版权声明
THE END
喜欢就支持一下吧
点赞11 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容