导航:首页 > 编程语言 > java排重

java排重

发布时间:2022-05-31 00:57:40

java如何实现冗余数据的排重比如,现在有大数量的请求字符串,我要过滤掉重复的数据,如何实现

把字符串和字符串出现的次数放到一个map当中,统计出现的次数,大于一次的就是有重复,根据重复次数把它们从map中移除

㈡ 字符串数组的排重问题

import java.util.HashSet;
import java.util.Iterator;
import java.util.Set;

public class Test89 {
public static void main(String[] args) {
String[] single = { "a", "b", "a", "c", "d", "b", "e" };
Set set = new HashSet();
for (int i = 0; i < single.length; i++) {
set.add(single[i]);//将所有元素放入set,因为set里面元素不重复,会自动替换重复的
}
int k = set.size();//取set的里面元素个数,以便定义新数组的长度
int j=0;
String[] single2 = new String[k];//用set的元素个数定义数组长度
for (Iterator iterator = set.iterator(); iterator.hasNext();) {
single2[j] = iterator.next().toString();//遍历set,放入新数组
j++;//新数组的计数器
}
for (int i = 0; i < single2.length; i++) {
System.out.print(single2[i]+" ");//遍历新数组,打印其中所有元素
}
}
}

㈢ java怎么吧获取到excel的数据进行排重 ,重复的删除,可以用什么方式

读取每一行数据,封装成Javabean并且覆盖tostring方法,然后放到set中去。覆盖tostring是为了判断啥时候算是相等的,这样set中的数据就是不重复的数据

㈣ java 编程实现接收键盘输入任意多个整数,并以逗号分开,然后选择数组排重或随机打乱。返回排序输

//回答完毕,采纳即可

importjava.io.FileWriter;
importjava.io.IOException;
importjava.util.Arrays;
importjava.util.Comparator;
importjava.util.Scanner;

publicclassDrinks
{
publicstaticfinalintREMOVE=1;

publicstaticfinalintRANDOM=2;

publicstaticfinalStringFILE="asd.txt";

publicstaticfinalStringLINE=System.getProperty("line.separator");

privatestaticString[]remove(String[]array)
{
String[]result=newString[0];
Stringtmp=",";
for(inti=0;i<array.length;i++)
{
Stringone=array[i];
if(tmp.indexOf(","+one+",")==-1)
{
String[]cloned=newString[result.length+1];
System.array(result,0,cloned,0,result.length);
cloned[cloned.length-1]=one;
result=cloned;
tmp+=one+",";
}
}
returnresult;
}

privatestaticvoidrandom(String[]array)
{
Arrays.sort(array,newComparator<String>()
{
@Override
publicintcompare(Stringo1,Stringo2)
{
doublerand=Math.random();
if(rand<0.5)
{
return1;
}
return-1;
}
});
}

privatestaticintwriteFile(Stringdata,Stringfile,booleanisAppend)
{
intcode=1;
try
{
FileWriterfw=newFileWriter(file,isAppend);
fw.write(data);
fw.flush();
fw.close();
}
catch(IOExceptione)
{
code=-1;
}
returncode;
}

publicstaticvoidmain(String[]args)
{
Scannerscanner=newScanner(System.in);
intstep=1;
Stringline="";
Stringchoosed;
loop:while(true)
{
if(step==1)
{
System.out.print("输入任意多个整数,并以逗号分开:");
line=scanner.nextLine().trim();
if(!line.matches("^\d+([,,]\d+)+$"))
{
continue;
}
step=2;
}
elseif(step==2)
{
System.out.print("请选择:1.数组排重2.随机打乱:");
choosed=scanner.nextLine().trim();
if(!choosed.matches("^[12]$"))
{
System.out.println("输入错误!");
continue;
}
else
{
System.out.print("你的选择是:"+choosed);
String[]array=line.split("[,,]");
Stringdata;
intcode;
Stringregex="[\[\]]";
switch(Integer.parseInt(choosed))
{
caseREMOVE:
String[]result=remove(array);
data=Arrays.toString(result).replaceAll(regex,"")+LINE;
System.out.println("操作结果:"+data);
code=writeFile(data,FILE,true);
if(code==1)
{
System.out.println("成功写入文件");
}
else
{
System.out.println("失败写入文件");
}
break;
caseRANDOM:
random(array);
data=Arrays.toString(array).replaceAll(regex,"")+LINE;
System.out.println("操作结果:"+data);
code=writeFile(data,FILE,true);
if(code==1)
{
System.out.println("成功写入文件");
}
else
{
System.out.println("失败写入文件");
}
break;
default:
break;
}
while(true)
{
System.out.println("是否继续?继续按3,退出按4");
line=scanner.nextLine().trim();
if("3".equals(line))
{
step=1;
continueloop;
}
elseif("4".equals(line))
{
scanner.close();
breakloop;
}
else
{
continue;
}
}
}
}
}
}
}

㈤ java这个程序怎样排重

下面那段就是去重复的代码,有不懂的地方可以问我
public static void main(String[] args) {
int[] pai = new int[54];
int count = 0;
int i = 0;
while (count < 17) {
int[] pai1 = new int[17];
pai1[i] = (int) (Math.random() * 54) + 1;
pai[count] = pai1[i];
pai1[i] = 0;
System.out.print(pai[count] + " ");
i++;
count++;
}

/****************去重代码*******************/
Map map=new HashMap();
List list=new ArrayList();
for (int j = 0; j < pai.length; j++) {
if(map.get(pai[i]) !=null){
map.put(pai[i], pai[i]);
list.add(pai[i]);
}
}
for (int j = 0; j < list.size(); j++) {
System.out.println(list.get(j));
}
/****************去重代码*******************/
}

㈥ java调用mysql增加新数据后如何自动重新排列顺序

如果mysql层面插入无法做到自动重新排列,你可以考虑每次查找,获取数据的时候,可以进行按照规则排序

㈦ java 排重算法

首先原始数据肯定要全部插入数据库,有一条日志插一条,以备以后别的需求.
然后通过sql来解决排重的问题.或者建按时,天,周,月,年建视图

㈧ java 输入一个字符串遇到数字就截掉并且排重

意思是不是把ascad12asd变成ascadasd?
static public void main(String[] args) {
String a = "ascad12asd我";
StringBuffer bf = new StringBuffer(a);
for (int i = 0; i < bf.length(); i++) {
if (bf.charAt(i) >= '0' & bf.charAt(i) <= '9')//取出每个位置上的相应的char比较。如果是在1-9之间就把它移除。
{
bf.delete(i, i+1);//移除当前位置上的数字
//bf.deleteCharAt(i);意思和上面一样
i--;//移除了整体后面都会向前挪动一个 所以要i要减回去在判断当前位置是否为数字
}
}
System.out.println( bf);
}
你去试下。也不知道你是这意思么?

㈨ java指令重排序,happens-before的问题

不会的。
java代码肯定是执行t.i = 1这个后,
再执行new Thread(t).start();这个
所以不会出现你说的情况

阅读全文

与java排重相关的资料

热点内容
app内页面的网址怎么提取 浏览:286
安卓升级包pkg文件如何打开 浏览:77
id3算法原理 浏览:602
骑手通app怎么输入不了保单号 浏览:988
82一56的筒便算法 浏览:404
数控机床fanuc编程 浏览:607
天刀mode不是内部或外部命令 浏览:854
长城c30压缩机价格 浏览:1000
java打开图片文件 浏览:409
跟程序员聊天聊到半夜 浏览:411
自己怎么做app代码 浏览:915
win7旗舰版进不去带命令符 浏览:799
单片机温度检测电路 浏览:802
拼图软件不压缩 浏览:656
红袖添香小说源码 浏览:624
erp加密工具在哪里买 浏览:516
怎么给qq群里的文件加密 浏览:762
androidsetbitmap 浏览:597
mt4反向编译 浏览:201
sun服务器命令 浏览:827