您的位置:首页 > 理论基础 > 数据结构算法

java常用数据结构常用方法

2016-07-14 19:57 417 查看
String/StringBuffer/ArrayList本质一样,底层都为数组,只不过动态静态的区别,方法也基本类似

1.String











package com.ming.huawei;

public class TestString {

public static void main(String[] args) {
String a = " hello,paul234 ";
String b = " 你好啊 2 123";
String c = a.substring(2);
System.out.println(c);
String dString = a.substring(0, 3);
System.out.println(dString);
String eString = a.concat(b);
System.out.println(eString);
String fString = a.replace("e", "a");
System.out.println(fString);
int gString = a.indexOf("l");
System.out.println(gString);
String string = b.replaceAll("\\d", "d");
System.out.println(string);
System.out.println(a.charAt(2));
System.out.println(b.contains("e"));
char [] ds = a.toCharArray();
a.isEmpty();
a.indexOf("p");
a.lastIndexOf("l");
a.
}
}


ello,paul234 

 he

 hello,paul234  你好啊 2 123

 hallo,paul234 

3

 你好啊 d ddd

e

false

2.StringBuffer

public class TestStringBuffer {
public static void main(String[] args) {
String str = "hello, 12345";
StringBuffer sBuffer  = new StringBuffer(str);
sBuffer.append("678");
sBuffer.charAt(3);
int start=0;
int end=1;
sBuffer.delete(start, end);
sBuffer.deleteCharAt(3);
sBuffer.indexOf("l");
sBuffer.lastIndexOf("l");
int fromIndex=0;
sBuffer.indexOf(str, fromIndex);
sBuffer.replace(start, end, str);
sBuffer.reverse();
sBuffer.substring(1);
sBuffer.toString();
String str1 = " 12345 ";
StringBuffer sBuffer1  = new StringBuffer(str1);

System.out.println(sBuffer1.length());
}
}


3.HashMap






package com.ming.huawei;

import java.util.HashMap;
import java.util.Iterator;
import java.util.LinkedList;
import java.util.Map;
import java.util.Map.Entry;
import java.util.TreeMap;

public class TestHashMap {
public static void main(String[] args) {
Map<String, Integer> map = new HashMap<String, Integer>();
Map<String, Integer> map1 = new TreeMap<String, Integer>();
LinkedList<Integer> sIntegers = new LinkedList<Integer>();
sIntegers.add(1);
sIntegers.add(10200);
sIntegers.add(6);
sIntegers.add(78);
sIntegers.sort(null);
Object[] a = sIntegers.toArray();
for(Object o:a){
System.out.print(o);
}
map.put("1", 3);
map.put("3", 3);
map.put("2", 5);
map.put("4", 2);
Iterator iterator = map.entrySet().iterator();
while(iterator.hasNext()){
Map.Entry<String, Integer> sEntry = (Entry<String, Integer>) iterator.next();
System.out.println(sEntry.getKey()+""+sEntry.getValue());
}

}
}


3.ArrayList(可排序,正,逆序)--可传入数据--数组---string等






package com.ming.huawei;

import java.util.*;
public class TSort{
public static void main(String[]args){
Scanner scan=new Scanner(System.in);
ArrayList<String> list=new ArrayList<String>();
int num=scan.hasNextLine()?Integer.parseInt(scan.nextLine()):0;
while(--num>=0&&scan.hasNextLine()){
list.add(scan.nextLine());
}
Collections.sort(list);
// for(String str:set){
// System.out.println(str);
// }
System.out.println("升序: ");
for(int i = 0;i < list.size(); i ++){

System.out.print(" "+list.get(i));
}
System.out.println();
System.out.println("降序: ");
for(int i = list.size()-1;i >=0; i--){

System.out.print(" "+list.get(i));
}
}
}

6

a

c

b

f

z

a

升序: 

 a a b c f z

降序: 

 z f c b a a

自定义排序:

Collections.sort(imageList, new Comparator() {
public int compare(Object a, Object b) {
int orderA = Integer.parseInt( ( (Image) a).getSequence());
int orderB = Integer.parseInt( ( (Image) b).getSequence());
return orderA - orderB;
}
});
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  string StringBuffer