【Java习作】KWIC模拟
作者:gnuhpc
出处:http://www.cnblogs.com/gnuhpc/
package org.bupt.kwic;
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Collections;
import java.util.StringTokenizer;
public class mykwic {
private static BufferedReader input_file;
private ArrayList<String> kwicList;
public mykwic (String filename) //construct the index of file fname
{
kwicList = new ArrayList<String>();
String line="";
fileopen(filename);
while (line!= null)
{
line= readline();
if (line !=null)
{
parseLine(line, kwicList);
}
}
//Collections.sort(kwicList);
display ( kwicList );
}
public static void fileopen(String InputFilename) {
try {
input_file = new BufferedReader(new FileReader(InputFilename));
} catch (IOException e) {
System.err.println(("File not open" + e.toString()));
System.exit(1);
}
}
public static String readline() {
String line ="";
try {
line = input_file.readLine();
} catch (Exception e) {
e.getStackTrace();
}
return line;
}
public void parseLine(String line,ArrayList<String> list) {
StringTokenizer tokener = new StringTokenizer(line);
String token = new String();
int index;
ArrayList<String> tokens = new ArrayList<String>();
int count = tokener.countTokens();
for (int j = 0; j < count; j++) {//将一行解析,并且将解析的word加入ArrayList中
token = tokener.nextToken();
tokens.add(token);
}
//对ArrayList中的字进行循环移位,得出最后结果
for (int i = 0; i < count; i++) {
index=i;
StringBuffer linebuffer = new StringBuffer();
for (int j = 0; j < count; j++) {
if (index >= count)
index = 0;
linebuffer.append ( tokens.get(index) );
linebuffer.append (" ");
index++;
}
line = linebuffer.toString();
kwicList.add(line);
}
}
public static void display(ArrayList<String> List) {
System.out.println("Output is");
for (int count = 0; count < List.size(); count++) {
System.out.println (List.get (count) );
}
}
public static void main(String[] args) {
new mykwic("test.txt");
}
}
作者:gnuhpc
出处:http://www.cnblogs.com/gnuhpc/
转载于:https://www.cnblogs.com/gnuhpc/archive/2013/01/04/2843799.html
【Java习作】KWIC模拟相关推荐
- Java 使用 URLConnection 模拟 Http Get和Post 提交
2019独角兽企业重金招聘Python工程师标准>>> Java 使用 URLConnection 模拟 Http Get和Post 提交. 1.URLConnectionHelpe ...
- Mockito:一个强大的用于Java开发的模拟测试框架
介绍 本文将介绍模拟测试框架Mockito的一些基础概念, 介绍该框架的优点,讲解应用Mockito的Java示例. 模拟(Mock)的概念 在软件开发的世界之外, "mock"一 ...
- 无忧考吧2017二级java_二级Java模拟软件|无忧考吧二级Java语言程序设计模拟软件下载 v2017.03官方版 - 121下载站...
无忧考吧二级Java语言程序设计模拟软件是专为准备考试二级JAVA语言的朋友打造的一款在线模拟软件,二级JAVA语言的考试理论上是非常简单的, 大家只需要掌握基本的语法和一些简单的编程就可能了,这款软 ...
- 【练习题】构造方法 编写Java程序,模拟简单的计算器。
package day09; /*1.[练习题]构造方法 编写Java程序,模拟简单的计算器. 定义名为Number的类,其中有两个整型数据成员n1和n2,应声明为私有.编写构造方法,赋予n1和n2初 ...
- Java制作一个盒子程序_编写一个简单的Java程序,模拟计算器的功能。
提问:编写一个简单的Java程序,模拟计算器的功能. 网友回答: 程序参考: import java.awt.*; import java.awt.event.ActionEvent; import ...
- Java枚举(用Java普通类模拟枚举的实现原理及JDK枚举API使用示例)
枚举的特点: ◆类型安全(Type Safety) ◆紧凑有效的枚举数值定义(Compact, Efficient Declaration of Enumerated Values) ◆无缝的和程 ...
- 【算法】java 用 数组 模拟 队列
本文为博主九师兄(QQ:541711153 欢迎来探讨技术)原创文章,未经允许博主不允许转载. 文章目录 1.概述 1.概述 本次使用java 用 数组 模拟 队列 package com.algor ...
- Java——使用多线程模拟真实高并发业务并保证安全性(一)
作者专注于Java.架构.Linux.小程序.爬虫.自动化等技术. 工作期间含泪整理出一些资料,微信搜索[javaUp],回复 [java][黑客][爬虫][小程序][面试]等关键字免费获取资料.技术 ...
- Java线程同步-模拟买票
文章首发于 2020-11-29 知乎文章:Java线程同步-模拟买票 作者:落雨湿红尘(也是我o) 01 导语 本文使用JAVA代码模拟买票场景下的业务交互,通过示例讲解线程的初始化.线程同步等ja ...
- 【java毕业设计】基于java+swing的模拟写字板设计与实现(毕业论文+程序源码)——模拟写字板
基于java+swing的模拟写字板设计与实现(毕业论文+程序源码) 大家好,今天给大家介绍基于java+swing的模拟写字板设计与实现,文章末尾附有本毕业设计的论文和源码下载地址哦.需要下载开题报 ...
最新文章
- 低版本不能使用php 命令,创建软链接
- sql server 备份与恢复系列一 必备知识
- 5分钟安全顾问 - 针对家庭办公室用户的简单防火墙安装
- 使用IDEA创建一个Servlet应用程序
- 关于扫描的一个比较好的网站
- PHP 与Memcache 分布式
- sql server 2014安装方法教程
- 解决python中join路径分隔符跨平台移植性
- java linux 调用32位so_从linux源码看socket(tcp)的timeout
- HCIP-RS-GRE
- 修改PHP上传文件的大小限制(post)
- json 字符串和json对象之间相互转换
- 【元胞自动机】基于matlab元胞自动机双通道交通【含Matlab源码 1657期】
- OCJP认证该不该考?
- 必看,关于sql的慢查询及解决方案
- 对话系统调查:近期进展与新前沿
- 文件传输协议FTP/TFTP/SSH/SCP——应用层
- Python利用PyQt5制作一个获取网络实时数据NBA数据播报GUI
- Linux 知:coredump
- 前端js,join()方法
热门文章
- influx没有web_influxdb 安装及简单使用
- JavaScript二进制、八进制和十六进制数值
- linux线程同步 eventfd,用 eventfd 在线程之间通信
- python 高级_Python高级特性(一)
- 阿里云搭建流媒体服务器
- 接口规范 9. 推流认证相关接口
- webpack静态资源地址注入html,Webpack4+ 多入口程序构建
- java中string类相等_Java中String类的常见面试题
- 一步一步学习Servlet之Cookie使用
- Java中包、导包、修饰符和内部类