当前位置: 首页 > news >正文

Java单词排序

【问题描述】
编写一个程序,从一个文件中读入单词(即:以空格分隔的字符串),并对单词进行排序,删除重复出现的单词,然后将结果输出到另一个文件中。
【输入形式】从一个文件sort.in中读入单词。
【输出形式】对单词进行排序,删除重复出现的单词,然后将结果输出到文件sort.out中。
【输入样例】假如sort.in文件内容如下:
rrr  sss  aaa  bbb  ccc   ddf  aaa  dd

【输出样例】sort.out文件内容为:
aaa bbb ccc dd  ddf  rrr sss
【样例说明】
读入文件sort.in,做适当的排序,并删除重复出现的单词,输出到文件sort.out

参考代码:

import java.io.BufferedReader;

import java.io.BufferedWriter;

import java.io.FileReader;

import java.io.FileWriter;

import java.io.IOException;

import java.util.Scanner;

import java.util.Set;

import java.util.TreeSet;

public class Main {

public static void main(String[] args) throws IOException {

BufferedReader ifile = new BufferedReader(new FileReader("sort.in"));

BufferedWriter ofile = new BufferedWriter(new FileWriter("sort.out"));

Set<String> words = new TreeSet<String>();

Scanner sc = new Scanner(System.in);

String s;

int flag=0;

String word="";

while((s=ifile.readLine())!=null) {

s = s.toLowerCase();

for(int i=0;i<s.length();i++) {

if(Character.isLowerCase(s.charAt(i))) {

word+=(s.charAt(i)+"");

flag=1;

}

else if(flag==1) {

words.add(word);

word="";

flag=0;

}

}

if(flag==1) {words.add(word);}

}

for(String ch:words) {

ofile.write(ch+" ");

}

ofile.close();

ifile.close();

sc.close();

}

}

相关文章:

  • swift-碰到的问题
  • Github 2024-01-03 开源项目日报 Top10
  • 【Mybatis】深入学习MyBatis:高级特性与Spring整合
  • 【Pytorch】学习记录分享9——PyTorch新闻数据集文本分类任务实战
  • 【教学类-43-14】 20240103 (4宫格数独:正确版:576套) 不重复的基础模板数量:576套
  • 工作中redis相关知识总结
  • Javaweb之Mybatis的基础操作的详细解析
  • Docker安装Superset
  • CUMT--Java复习--核心类
  • 影子价格 Shadow Price
  • JUC原子操作类
  • 【C程序设计】C函数
  • 华为鸿蒙应用--文件管理工具(鸿蒙工具)-ArkTs
  • JavaSE语法之十五:异常(超全!!!)
  • 服务器运行状况监控工具
  • 单挑力扣(LeetCode)SQL题:180. 连续出现的数字(难度:中等)
  • 用idea跑起十多年前的项目
  • PHP序列化总结3--反序列化的简单利用及案例分析
  • Linux系统:引导过程与服务控制
  • 深入理解ArkTS:Harmony OS 应用开发语言 TypeScript 的基础语法和关键特性
  • “上海-日喀则”援藏入境旅游包机在沪首航
  • 上海公办小学验证今起开始,下周一和周二分区进行民办摇号
  • 特朗普再提“接管”加沙,要将其变为“自由区”
  • 向猫学习禅修之后,你会发现将生活降格为劳作是多么愚蠢
  • 党建评:对违规宴饮等问题要坚决露头就打
  • 体坛联播|博洛尼亚时隔51年再夺意杯,皇马逆转马洛卡