问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

有关IO流的JAVA编程,要求:把一个数组的元素复制到另个数组;去除重复元素不能用SET集合

发布网友 发布时间:2022-05-03 02:09

我来回答

3个回答

热心网友 时间:2023-10-05 03:09

以int数组为例
先对该数组排序,
因为是排序过的,相同的值会集中在一起
然后循环该数组,
对于每个值,第一次出现时保存到文件里,以后出现时无视
代码如下

import java.io.File;
import java.io.FileNotFoundException;
import java.io.PrintWriter;
import java.util.Arrays;

public class Test {
public static void main(String[] args) {
// int型Sample数组
int[] testArr = { 8, 1, 2, 3, 4, 5, 4, 3, 2, 2, 5, 1, 2, 3, 4, 1, 2, 3,
5, 8 };
// 对该数组排序
Arrays.sort(testArr);

try {
// 创建输出文件
File outFile = new File("c://result.txt");
PrintWriter pf = new PrintWriter(outFile);
// 判断值
int checkValue = 0;
// 循环整个数组
for (int i = 0; i < testArr.length; i++) {
if (i == 0) {
// 把第一个值放到checkValue并保存到文件
checkValue = testArr[0];
pf.println(checkValue);
} else {
// 数组里的当前值不等于checkValue
if (checkValue != testArr[i]) {
// 把当前值放到checkValue并保存到文件
checkValue = testArr[i];
pf.println(checkValue);
}
}
}
pf.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
}
}
}

热心网友 时间:2023-10-05 03:09

package com.ajax.test;

import java.io.File;
import java.io.FileWriter;
import java.util.Arrays;

/**
* 把一个数组的元素复制到另个数组; 去除重复元素不能用SET集合; 每次复制的记录输到一个文件里
*
* @author ajax_2003
* @version 1.0, 2009-7-26
*
*/
public class CopyArrayAndRemoveDuplicate {

private static String FILE_PATH = "d:/abc.txt";
private static File file;

static {
file = new File(FILE_PATH);
}

/**
* 取出冗余数据
*
* @param nums
* 原数组
*/
private int[] removeDuplicate(int[] nums) throws Exception {
int[] tmpArray = new int[nums.length];
int count = 0;

loop: //
for (int i = 0; i < nums.length; i++) {
int tmp = nums[i];

for (int j = 0; j < count; j++) {
if (tmp == tmpArray[j])
continue loop;
}
tmpArray[count++] = tmp;
log("成功复制了元素" + tmp);// 写日志
}
return copyArray(tmpArray, 0, count);
}

/**
* 拷贝数组
*
* @param srcArray
* 要拷贝的数组
* @param startIndex
* 拷贝起始索引
* @param endIndex
* 拷贝结束索引
* @return 结果数组
*/
private int[] copyArray(int[] srcArray, int startIndex, int endIndex)
throws Exception {
if (endIndex <= startIndex)
throw new Exception("Argumens wrong!");

int[] desArray = new int[endIndex - startIndex];

System.arraycopy(srcArray, startIndex, desArray, 0, desArray.length);
return desArray;
}

/**
* 输出操作日志(即: 每次复制的记录输到一个文件里)
*
* @param oprate
*/
private void log(String oprate) {
FileWriter out = null;

try {
out = new FileWriter(file, true);
out.write(oprate + "\r\n");
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
if (out != null)
out.close();
out = null;
} catch (Exception ex) {
ex.printStackTrace();
}
}
}

public static void main(String[] args) {
int[] nums = { 1, 223, 1, 2, 2, 2, 3, 2, 3, 34, 45, 5, 5, 3, 23, 2, 2,
3, 4, 5, 5, 6, 7, 78, 8, 9, 34, 90, 45, 675, 4, };

int[] finalArray;

try {
finalArray = new CopyArrayAndRemoveDuplicate()
.removeDuplicate(nums);

System.out.println(Arrays.toString(finalArray));
} catch (Exception e) {
e.printStackTrace();
}
}
}
有些地方可能考虑的不完全,见谅!

热心网友 时间:2023-10-05 03:10

用hashtable行不,继承自java.util.Dictionary<K,V>,或者hashmap,都不是继承自set
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
dell电脑散热是按哪个键 风水中的北方与肾的关系 20分+100分 哈尔滨近期招聘会 哈尔滨信息港的基本信息 哈尔滨信息港基本信息 哈尔滨市最近的招聘信息? 黑龙江省招聘查询入口(龙招港黑龙江招生网2020招聘信息)? 小区车位如何配比 身上红点不痛不痒是怎么回事 万家乐LJSQ20-12UF1保修信息 《原神》温迪是男是女官方回复是什么? 急求~~36种动物谜语 高手来啊~~ 谜底是鸟的谜语 微众银行身份证绑定的可以换吗 怎么关闭微众银行。我两个微信共同一张银行卡。现一个开通了微众银行支付。另一个微信开不了。现我想关了 谜语动物谜语谜语 一只鹦鹉穿着防弹衣站在树上跳舞,树下一个猎人拿着一只双管* 猜谜中哪吒闹海的答案为鹦鹉,答案从何而来? 有关动物的谜语,歇后语,俗语,广告词。 猜谜语;一只鸟儿披绿袍,头上戴着红缨帽 它会学人来说话, 声音清脆呱呱叫 11个月宝宝感冒嗓子嘶哑怎么办 10个月宝宝感冒咳嗽不发烧,现在嗓子都哑了 宝宝生了一次感冒过后嗓子一直都是哑的 怎么回事啊 QQ平板登陆能不能看见手机上发的被拒收的消息? QQ好友,如果对方拒收或拉黑可以收到我发给对方的消息吗?我发很多出去,对方不回。不知道是否收到? 如果QQ被屏蔽了,给对方发信息,对方会接受到吗?若发了的话,系统会显示“对方拒绝接受你的消息”之类 求问QQ和微信,把别人拉黑后,别人要是给我发来信息,别人会不会显示对方已把你拉黑之类的系统消息? 2014年主管护师考试用书哪种最准确 2016主管护师用书那个好? 我是2010年考的护士证,我要多久可以考主管护师 主管护师报考时间是什么? 《原神》温迪是男是女? 游戏原神温迪是男是女? 《原神》温迪是女孩子还是男孩子呢? 《原神》温迪台词是什么? 永生的眼睛里的温迪是个什么样得人 《流星雨》这部电视剧剧情是什么? 明星温迪是谁 温迪是什么风格的妆容 为什么大家把WENDY翻译成温迪而不是温蒂呢? 松米q7蓝牙耳机的使用说明 能通话吗 松米v3蓝牙耳机怎么配对不成功 松米v3蓝牙耳机恢复不了双耳模式怎么办? 实用新型专利到底指的是什么 实用新型专利的主要特点是什么? 拼多多打图专利权怎么填写 怎么在拼多多上发部自已的专利产品 在拼多多知识产权平台上传专利失败了该怎么办? 化妆品备案中原料专利证书怎么上传 拼多多外观专利侵权投诉模版,有大神可以指导吗? 拼多多商家后台上传商标注册证有效期小于3个月不能上传怎么办?