java数组中去掉重复数据可以使用set集合,set本身内部是不保存重复的数据的,如下代码:
创新互联-专业网站定制、快速模板网站建设、高性价比嘉兴网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式嘉兴网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖嘉兴地区。费用合理售后完善,10多年实体公司更值得信赖。
import java.util.Arrays;import java.util.Set;import java.util.TreeSet; public class ceshi { public static void main(String[] args) { int[] testArr = { 5, 5, 1, 2, 3, 6, -7, 8, 6, 45, 5 };//新建一个int类型数组 System.out.println(Arrays.toString(testArr)); SetInteger set = new TreeSetInteger();//新建一个set集合 for (int i : testArr) { set.add(i); } Integer[] arr2 = set.toArray(new Integer[0]); // 数组的包装类型不能转 只能自己转;吧Integer转为为int数组; int[] result = new int[arr2.length]; for (int i = 0; i result.length; i++) { result[i] = arr2[i]; } System.out.println(Arrays.toString(arr2)); }}
运行结果如下:
一个好的集成开发环境能告诉你,以开发java的IDEA为例:
1、声明却未使用的变量:
它会建议你删除该变量。
2、无用的初始值:
它也会建议你删除初始值。
3、不必要的变量:
它会建议直接返回就行,不需要定义额外的变量。
4、可以简化的if语句:
5、可以简化的for语句:
6、一些潜在的可能引起bug的地方:
将会引起空指针异常
没有检查泛型
7、重复代码:
重复的代码可以考虑合并成公共的方法。
还有太多例子我就不举例了,总之好的ide在开发过程中就能告诉我们很多潜在的问题,解决代码不规范的地方,像eclipse也有专门的插件来检查代码。
当然平时就养成好的开发习惯和好的代码规范,长期积累下来在开发过程中自己就能解决掉一大堆冗余代码。
把字符串和字符串出现的次数放到一个map当中,统计出现的次数,大于一次的就是有重复,根据重复次数把它们从map中移除
java中找出数组中重复的数并去除的代码如下:
public static void testA() {
String [] str = {"Java", "C++", "Php", "C#", "Python", "C++", "Java"};
for (String elementA:str ) {
System.out.print(elementA + " ");
}
ListString list = new ArrayListString();
for (int i=0; istr.length; i++) {
if(!list.contains(str[i])) {
list.add(str[i]);
}
}
System.out.println();
String[] newStr = list.toArray(new String[1]); //返回一个包含所有对象的指定类型的数组
for (String elementB:newStr ) {
System.out.print(elementB + " ");
}
System.out.println();
}
所谓数组,是无序的元素序列。 若将有限个类型相同的变量的集合命名,那么这个名称为数组名。组成数组的各个变量称为数组的分量,也称为数组的元素,有时也称为下标变量。用于区分数组的各个元素的数字编号称为下标。数组是在程序设计中,为了处理方便, 把具有相同类型的若干元素按无序的形式组织起来的一种形式。 这些无序排列的同类数据元素的集合称为数组。
举例:
int a[10]; 说明整型数组a,有10个元素。
float b[10],c[20]; 说明实型数组b,有10个元素,实型数组c,有20个元素。
char ch[20]; 说明字符数组ch,有20个元素。
数组中的所有元素都具有相同类型(这一点和结构或类中的字段不同,它们可以是不同类型)。数组中的元素存储在一个连续性的内存块中,并通过索引来访问(这一点也和结构和类中的字段不同,它们通过名称来访问)。