广告
返回顶部
首页 > 资讯 > 精选 >如何在java项目中利用IO流对数组进行排序
  • 727
分享到

如何在java项目中利用IO流对数组进行排序

2023-06-06 12:06:46 727人浏览 泡泡鱼
摘要

这篇文章主要为大家详细介绍了如何在java项目中利用io流对数组进行排序,文中示例代码介绍的非常详细,具有一定的参考价值,发现的小伙伴们可以参考一下:排序思路(1)从字符输入流中读取文本,缓冲各个字符,从而实现字符、数组和行的高效读取(2)

这篇文章主要为大家详细介绍了如何在java项目中利用io流对数组进行排序,文中示例代码介绍的非常详细,具有一定的参考价值,发现的小伙伴们可以参考一下:

排序思路

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

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

(3)转换为数字类型

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

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

2、实例

 public static void main(String[] args) { // TODO Auto-generated method stub try { //数组a()的数字个数,由用户输入决定 InputStreamReader isr=new InputStreamReader(System.in); //从字符输入流中读取文本,缓冲各个字符,从而实现字符、数组和行的高效读取 BufferedReader bfr=new BufferedReader(isr); //询问用户需要多少位数的数组 System.out.println("请输入需要多少位数的数组:\n"); String a1=bfr.readLine(); //将a1转换为数字类型 int i=Integer.parseInt(a1); //提示用户输入数组数据 System.out.println("请向数组中存入"+i+"个数据:\n"); //将用户输入数字存入数组 Integer[] a=new Integer[i]; for(int j=0;j<i;j++){ System.out.println("第"+(j+1)+"个:"); a[j]=new Integer(bfr.readLine()); } //把数组按升序排序并打印出来 for(int k=1;k<i;k++){ for(int m=0;m<(i-k);m++){ if(a[m]>a[m+1]){ //Integer temp=new Integer(0); int temp=0; temp=a[m]; a[m]=a[m+1]; a[m+1]=temp; } } } //输出排序后的数组 System.out.println("排序后\n"); for(int t=0;t<=i;t++){ System.out.println(a[t]); }  } catch (Exception e) { // TODO: handle exception e.printStackTrace(); } } }

实例扩展:

键盘录入5个学生信息(姓名,语文成绩,数学成绩,英语成绩),按照总分从高到低存入文本文件。

代码:

public class TreeSetDemo {  public static void main(String[] args) throws IOException{    //创建TreeSet对象,用接口匿名内部类的方式实现Comparator接口    TreeSet<Student> ts=new TreeSet<Student>(new Comparator<Student>() {      //重写Comparator接口中的compare()方法      @Override      public int compare(Student s1,Student s2) {      //主要排序条件:总成绩,按从高到低输出      int num1=s2.sum(s2)-s1.sum(s1);      //次要排序条件,当总成绩相同时按学生姓名内容比较      int num2=(num1==0)?s2.getName().length()-s1.getName().length():num1;        return num2;      }        });    //键盘录入学生信息    System.out.println("请输入学生信息:");    for(int x=1;x<6;x++) {      Scanner sc=new Scanner(System.in);      System.out.print("请输入第"+x+"名学生的姓名:");      String name=sc.nextLine();      System.out.print("请输入第"+x+"名学生的语文成绩:");      int chineseScore=sc.nextInt();      System.out.print("请输入第"+x+"名学生的数学成绩:");      int mathScore=sc.nextInt();      System.out.print("请输入第"+x+"名学生的英语成绩:");      int englishScore=sc.nextInt();      //将录入的学生信息封装到学生对象里      Student s=new Student();      s.setName(name);      s.setChineseScore(chineseScore);      s.setMathScore(mathScore);      s.setEnglishScore(englishScore);      //把学生对象添加到集合中      ts.add(s);    }    //创建字符缓冲输出流对象    BufferedWriter bw=new BufferedWriter(new FileWriter("18-1.txt"));    //遍历    for(Student s:ts) {      //利用StringBuffer中的追加功能,将需要输出的信息集合在一起      StringBuffer sb=new StringBuffer();      sb.append(s.getName()).append(",").append(s.getChineseScore()).append(",").append(s.getMathScore())      .append(",").append(s.getEnglishScore()).append(",").append(s.sum(s));      //将信息写入文本文件中      bw.write(sb.toString());      //换行      bw.newLine();      //刷新流      bw.flush();    }    //关闭流,释放资源    bw.close();  }}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程网。

--结束END--

本文标题: 如何在java项目中利用IO流对数组进行排序

本文链接: https://www.lsjlt.com/news/246817.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 如何在java项目中利用IO流对数组进行排序
    这篇文章主要为大家详细介绍了如何在java项目中利用IO流对数组进行排序,文中示例代码介绍的非常详细,具有一定的参考价值,发现的小伙伴们可以参考一下:排序思路(1)从字符输入流中读取文本,缓冲各个字符,从而实现字符、数组和行的高效读取(2)...
    99+
    2023-06-06
  • 怎么在java中利用流排序数组
    这篇文章给大家介绍怎么在java中利用流排序数组,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。Java的特点有哪些Java的特点有哪些1.Java语言作为静态面向对象编程语言的代表,实现了面向对象理论,允许程序员以优雅...
    99+
    2023-06-14
  • 如何在java项目中使用io流
    这篇文章将为大家详细讲解有关如何在java项目中使用io流,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。1.1 java.io.objectInputStream 对象输入流:用于将一组字节...
    99+
    2023-05-31
    java io流 ava
  • 怎么在java中对数组进行排序
    这期内容当中小编将会给大家带来有关怎么在java中对数组进行排序,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。Java是什么Java是一门面向对象编程语言,可以编写桌面应用程序、Web应用程序、分布式系统...
    99+
    2023-06-14
  • 在java项目中怎么对数组进行合并
    在java项目中怎么对数组进行合并?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。需求:两个字符串合并(如果想去重复,参考下一篇--数组去重复及记录重复个数)//方法一 Arra...
    99+
    2023-05-31
    java ava 目中
  • 如何在Java项目中利用字符流实现一个io编程
    如何在Java项目中利用字符流实现一个io编程?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。案例1:读取一个文件并写入到另一个文件中,char[] 来中转。首先要在E盘下创建一...
    99+
    2023-05-31
    java io编程 字符流
  • 如何在Java项目中利用post请求对Json进行封装
    如何在Java项目中利用post请求对Json进行封装?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。直接上代码String longUrl = ...
    99+
    2023-05-31
    json java post
  • js中如何对json数组进行排序
    目录js对json数组进行排序js根据json数组多个字段排序总结js对json数组进行排序 废话不多说,直接上代码 // 升序排列 function up(a, b) {     ...
    99+
    2023-05-16
    js json数组 json数组进行排序 json数组排序
  • 如何在java项目组中进行封装
    今天就跟大家聊聊有关如何在java项目组中进行封装,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。java 中的封装介绍及使用方法在面向对象程式设计方法中,封装(英语:Encapsul...
    99+
    2023-05-31
    java ava
  • 在java项目中如何对csv数据进行分割
    在java项目中如何对csv数据进行分割?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。java 分割csv数据的实例详解实际需要解析的csv中很多都是从excel中转过来的,数...
    99+
    2023-05-31
    java ava csv
  • 在Java项目中如何对进制进行转换
    在Java项目中如何对进制进行转换?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。十进制转成十六进制: Integer.toHexString(int i) 十进...
    99+
    2023-05-31
    java ava 目中
  • 怎么在php中使用sort函数对数组进行排序
    本篇文章为大家展示了怎么在php中使用sort函数对数组进行排序,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。php是什么语言php,一个嵌套的缩写名称,是英文超级文本预处理语言(PHP:Hyper...
    99+
    2023-06-14
  • 如何使用 Go 语言对数组进行排序?
    Go 语言是一门现代化的编程语言,它拥有良好的并发支持和高效的内存管理,被广泛应用于网络编程、分布式系统、云计算等领域。在 Go 语言中,数组是一种常见的数据结构,它可以用来存储一组具有相同类型的元素。本文将介绍如何使用 Go 语言对数组进...
    99+
    2023-10-07
    数组 git 日志
  • 如何使用珠算法对PHP数组进行排序
    本篇内容主要讲解“如何使用珠算法对PHP数组进行排序”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何使用珠算法对PHP数组进行排序”吧!首先给大家简单介绍下什么是珠算法?珠算法也叫珠排序,是一...
    99+
    2023-06-20
  • PHP中怎么利用Ksort()函数根据关键字对数组进行排序
    今天就跟大家聊聊有关PHP中怎么利用Ksort()函数根据关键字对数组进行排序,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。具体代码如下:<php $data&nbs...
    99+
    2023-06-17
  • Java中的图片如何利用 IO中字节流进行复制
    Java中的图片如何利用 IO中字节流进行复制?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。Java IO--字节流复制图片实例字节流用来操作图片、视屏、音频(进制文件)实...
    99+
    2023-05-31
    java io 图片复制
  • PHP中的array_multisort()函数:如何对多个数组进行排序
    PHP中的array_multisort()函数:如何对多个数组进行排序,需要具体代码示例在PHP开发中,常常需要对多个数组进行排序,例如根据年龄、姓名等多个字段进行排序。PHP中提供了array_multisort()函数用于对多个数组进...
    99+
    2023-11-03
    PHP array_multisort 多个数组排序
  • 如何在Linux系统中使用Java语言进行数组排序操作?
    在Linux系统中,Java语言是一种非常常见的编程语言。其中,数组排序是Java语言中的常见操作之一。本文将详细介绍如何在Linux系统中使用Java语言进行数组排序操作,包括如何使用Java内置的排序算法和手写排序算法。 一、使用Jav...
    99+
    2023-11-13
    linux leetcode 数组
  • 再JAVA中如何使用qsort对类进行排序?
    目录 结论:  解析:  结论:  import java.util.Arrays;class Person implements Comparable{ public String name; public int age...
    99+
    2023-08-31
    java 排序算法 算法 开发语言
  • 如何在java中对数组进行复制
    本篇文章为大家展示了如何在java中对数组进行复制,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。1、System.arraycopy的用法:public static void&...
    99+
    2023-05-30
    java
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作