public class T { /** * @param args */ public static void main(String[] args) { String array1[] = {"1", "2", "3"}; String array2[] = {"2", "3", "4"}; List<String> arr = new ArrayList<String>(); for (int i = 0; i < array1.length; i++) { if (!arr.contains(array1[i])) { arr.add(array1[i]); } } for (int j = 0; j < array2.length; j++) { if (!arr.contains(array2[j])) { arr.add(array2[j]); } } Collections.sort(arr); int size = arr.size(); String array3[] = new String[size]; for (int k = 0; k < size; k++) { array3[k] = (String) arr.get(k); } } }
List<String> list = new ArrayList<String>(); Set<String> set = new TreeSet<String>(); String[] a ={"1","2","3"}; String[] b ={"4","2","3"}; for(String str:a){ set.add(str); } for(String str:b){ set.add(str); } list.addAll(set); String[] c = list.toArray(a); for(String str:c){ System.out.println(str); }
String[] array1={"1","2","3"}; String[] array2={"2","3","4"}; TreeMap<String,String> set = new TreeMap<String,String>(); for(String s:array1) set.put(s, s);
for(String b:array2) set.put(b, b);
System.out.println(set.values());这也可以
嗯,方法都不错。 个人最喜欢这一种: [align=center]List <String> list = new ArrayList <String>(); Set <String> set = new TreeSet <String>(); String[] a ={"1","2","3"}; String[] b ={"4","2","3"}; for(String str:a){ set.add(str); } for(String str:b){ set.add(str); } list.addAll(set); String[] c = list.toArray(a); for(String str:c){ System.out.println(str); }[/align]
* @param args
*/
public static void main(String[] args) { String array1[] = {"1", "2", "3"};
String array2[] = {"2", "3", "4"};
List<String> arr = new ArrayList<String>();
for (int i = 0; i < array1.length; i++) {
if (!arr.contains(array1[i])) {
arr.add(array1[i]);
}
}
for (int j = 0; j < array2.length; j++) {
if (!arr.contains(array2[j])) {
arr.add(array2[j]);
}
}
Collections.sort(arr);
int size = arr.size();
String array3[] = new String[size];
for (int k = 0; k < size; k++) {
array3[k] = (String) arr.get(k);
}
}
}
Set<String> set = new TreeSet<String>();
String[] a ={"1","2","3"};
String[] b ={"4","2","3"};
for(String str:a){
set.add(str);
}
for(String str:b){
set.add(str);
}
list.addAll(set);
String[] c = list.toArray(a);
for(String str:c){
System.out.println(str);
}
import java.util.Map;
public class Tester {
public static void main(String[] args) {
String array1[]={"1","2","3"};
String array2[]={"2","3","4"};
Map<String ,String> m=new HashMap<String,String>();
for(int i=0;i<array1.length;i++)
m.put(array1[i],array1[i]);
for(int i=0;i<array2.length;i++)
m.put(array2[i],array2[i]);
String array3[]=new String[m.size()];
int j=0;
for(String s:m.keySet()){
array3[j]=s;
j++;
}
for(int i=0;i<array3.length;i++)
System.out.print(array3[i]+" ");
}}
import java.util.Arrays;
import java.util.Set;
import java.util.TreeSet;public class Test {
public static void main(String[] args) {
String[] array1={"1","2","3"};
String[] array2={"2","3","4"};
Set<String> set = new TreeSet<String>();
set.addAll(Arrays.asList(array1)); //也可以用for循环加,效率更高
set.addAll(Arrays.asList(array2)); //也可以用for循环加,效率更高
String[] result = set.toArray(new String[0]);
System.out.println(Arrays.toString(result));
}
}
1楼用List,判断是否存在和排序,完全可以用TreeSet
2楼方法比较好,list.addAll(set); String[] c = list.toArray(a); 其实可以用set.toArray(a)来精简
3楼用map来保证唯一性,但没有排序,方法不是最佳的。
// TODO Auto-generated method stub
String array1[]={"1","2","3"};
String array2[]={"2","3","4"};
java.util.Set set = new HashSet();
for(int i=0;i<array1.length;i++)
set.add(array1[i]);
for(int i=0;i<array2.length;i++)
set.add(array2[i]);
Object str[] = set.toArray();
for(int i=0;i<str.length;i++)
System.out.println(str[i]);
}
}
import java.util.Arrays;
public class T0613
{ public static void main(String[] args)
{
String array1[]={"1","2","3"};
String array2[]={"2","3","4"};
String temp[],sorAry[];
temp=new String[array1.length+array2.length];
sorAry=new String[array1.length+array2.length];
System.arraycopy(array1, 0, temp, 0, array1.length);
System.arraycopy(array2, 0, temp, 3, array2.length);
int k;
Arrays.sort(temp); for(int i=0;i<temp.length-1;i++)
{
if(temp[i]!=temp[i+1])//4
sorAry[i]=temp[i];
if(i==temp.length-2&&temp[i]!=temp[i+1])
{sorAry[i]=temp[i];i++;sorAry[i]=temp[i];}
}
//Arrays.sort(sorAry);
for(int i=0;i<temp.length;i++)
{
System.out.println("=="+sorAry[i]);
}
}}
import java.util.TreeSet;public class Tester { public static void main(String[] args) {
TreeSet<String> ts = new TreeSet<String>();
String[] array1 = {"1", "2", "3"};
String[] array2 = {"2", "3", "4"};
for (String s : array1) ts.add(s);
for (String s : array2) ts.add(s);
String[] r = ts.toArray(new String[ts.size()]);
for (String s : r) System.out.println(s);
}}
String array2[]={"2","3","4"};
String array3[]=null;
TreeSet<String> hs = new TreeSet<String>();
hs.addAll(Arrays.asList(array1));
hs.addAll(Arrays.asList(array2));
array3 = (String[]) hs.toArray(new String[hs.size()]);
System.out.println(Arrays.toString(array3))
否则在 toArray 的实现中,当它发现作为参数传递进方法的数组长度不够时,会自己创建一个足以容纳下 set 中元素的数组来代替参数数组的。
public class T { /**
* @param args
*/
public static void main(String[] args) { String array1[] = {"1", "2", "3"};
String array2[] = {"2", "3", "4"};
List <String> arr = new ArrayList <String>();
for (int i = 0; i < array1.length; i++) {
if (!arr.contains(array1[i])) {
arr.add(array1[i]);
}
}
for (int i = 0; i < array2.length; i++) {
if (!arr.contains(array2[i])) {
arr.add(array2[i]);
}
}
Collections.sort(arr);
int size = arr.size();
String array3[] = new String[size];
for (int i = 0; i < size; i++) {
array3[i] = (String) arr.get(i);
}
for(int i=0;i<size;i++)
{
System.out.print(array3[i]+" ");
}
}
}
1.去除重复的.
2.排序在java容器中,实现这二种功能的有treemap和Treeset 所以.
String[] array1={"1","2","3"};
String[] array2={"2","3","4"};
TreeMap<String,String> set = new TreeMap<String,String>();
for(String s:array1)
set.put(s, s);
for(String b:array2)
set.put(b, b);
System.out.println(set.values());这也可以
个人最喜欢这一种:
[align=center]List <String> list = new ArrayList <String>();
Set <String> set = new TreeSet <String>();
String[] a ={"1","2","3"};
String[] b ={"4","2","3"};
for(String str:a){
set.add(str);
}
for(String str:b){
set.add(str);
}
list.addAll(set);
String[] c = list.toArray(a);
for(String str:c){
System.out.println(str);
}[/align]
String array2[]={"2","3","4"};
Set<String> set = new TreeSet<String>();
for(String s : array1)
set.add(s);
for(String s : array2)
set.add(s);
//set.addAll(Arrays.asList(array1));
//set.addAll(Arrays.asList(array2));
String[] result = set.toArray(new String[set.size()]); System.out.println(Arrays.toString(result));
}
public class qdb
{
public static TreeSet method(String[] s1,String[] s2)
{
TreeSet ts1=new TreeSet(Arrays.asList(s1));
TreeSet ts2=new TreeSet(Arrays.asList(s2));
ts1.addAll(ts2);
return ts1;
}
public static void main(String[] args)
{
System.out.println(method(new String[]{"1","2","3"},new String[]{"2","3","4"}));
}
}
TreeSet不是会实现自动升序嘛,想降的话就调用下 Collections.reverse();