PriorityQueue ,ArrayList , 数组排序
2015-07-27 10:39
507 查看
static class E implements Comparable<E>{ int x ; int y ; int state ; int money ; public E(int x , int y , int state , int money){ this.x = x ; this.y = y ; this.state = state ; this.money = money ; } @Override public int compareTo(E o) { return money - o.money ; } } PriorityQueue<E> q = new PriorityQueue<E>() ; q.add(new E(1, 0, 0, 1)) ; q.add(new E(2, 0, 0, 3)) ; q.add(new E(3, 0, 0, 2)) ; q.add(new E(4, 0, 0, 5)) ; q.add(new E(5, 0, 0, 9)) ; while(! q.isEmpty()){ System.out.println(q.poll().money) ; } 输出结果: 1 2 3 5 9 ArrayList<E> q = new ArrayList<E>() ; q.add(new E(1, 0, 0, 1)) ; q.add(new E(2, 0, 0, 3)) ; q.add(new E(3, 0, 0, 2)) ; q.add(new E(4, 0, 0, 5)) ; q.add(new E(5, 0, 0, 9)) ; Collections.sort(q) ; for(E e : q){ System.out.println(e.money) ; } 输出结果: 1 2 3 5 9 E[] q = new E[100] ; q[0] = new E(1, 0, 0, 1) ; q[1] = new E(2, 0, 0, 3) ; q[2] = new E(3, 0, 0, 2) ; q[3] = new E(4, 0, 0, 5) ; q[4] = new E(5, 0, 0, 9) ; Arrays.sort(q , 0 , 5) ; for(int i = 0 ; i < 5 ; i++){ System.out.println(q[i].money) ; } 输出结果: 1 2 3 5 9 static class E{ int x ; int y ; int state ; int money ; public E(int x , int y , int state , int money){ this.x = x ; this.y = y ; this.state = state ; this.money = money ; } } ArrayList<E> q = new ArrayList<E>() ; q.add(new E(1, 0, 0, 1)) ; q.add(new E(2, 0, 0, 3)) ; q.add(new E(3, 0, 0, 2)) ; q.add(new E(4, 0, 0, 5)) ; q.add(new E(5, 0, 0, 9)) ; Collections.sort(q , new Comparator<E>() { @Override public int compare(E a , E b) { return a.money - b.money ; } } ) ; for(E e : q){ System.out.println(e.money) ; } 输出结果: 1 2 3 5 9 E[] q = new E[100] ; q[0] = new E(1, 0, 0, 1) ; q[1] = new E(2, 0, 0, 3) ; q[2] = new E(3, 0, 0, 2) ; q[3] = new E(4, 0, 0, 5) ; q[4] = new E(5, 0, 0, 9) ; Arrays.sort(q, 0, 5, new Comparator<E>() { @Override public int compare(E a, E b) { return a.money - b.money ; } }) ; for(int i = 0 ; i < 5 ; i++){ System.out.println(q[i].money) ; } 输出结果: 1 2 3 5 9 PriorityQueue<E> q = new PriorityQueue<E>(1 , new Comparator<E>() { @Override public int compare(E a , E b) { return a.money - b.money ; } }) ; q.add(new E(1, 0, 0, 1)) ; q.add(new E(2, 0, 0, 3)) ; q.add(new E(3, 0, 0, 2)) ; q.add(new E(4, 0, 0, 5)) ; q.add(new E(5, 0, 0, 9)) ; while(! q.isEmpty()){ System.out.println(q.poll().money) ; } 输出结果: 1 2 3 5 9
相关文章推荐
- ios-UI-汤姆猫德游戏实现
- 详解udev
- hdu 5312 Sequence 三角形数
- 玩转Android---UI篇---Dialog(对话框)
- 玩转Android---UI篇---AutoCompleteTextView(自动提示)
- 玩转Android---UI篇---Menu(菜单)
- 玩转Android---UI篇---ListView之SampleAdapter(列表)---1
- 玩转Android---UI篇---ListView之ArrayAdapter(列表)---2
- 玩转Android---UI篇---CheckBox(多选按钮)
- correlated subquery and non-correlated subquery
- 玩转Android---UI篇---RadioButton(单选按钮)
- 玩转Android---UI篇---DatePicker,TimePicker(日期和时间)
- 玩转Android---UI篇---ImageButton(带图标的按钮)
- 玩转Android---UI篇---Toast(提示)
- 玩转Android---UI篇---EditText(编辑框)
- 下载服务器代码出现fatal: git 1.7.2 or later required的问题解决方法
- 玩转Android---UI篇---TextView(文本框)
- 玩转Android---UI篇---Button(按钮)
- OO’s Sequence
- This Android SDK requires Android Developer Toolkit version 23.0.0 or above. Current version is 22.