java的一些小技巧算法

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/QQlwx/article/details/79437899

1. 实现两个数的交换,因为java里面没有指针,传的都是副本

  private static void swap(int[] a, int i, int k) {
        if (i == k) {
            return;
        }
        a[i] = a[i] + a[k];
        a[k] = a[i] - a[k];
        a[i] = a[i] - a[k];
    }

2.排序的方法Collections.sort(list)

1.关于基本类型变量
        List<Integer> a = new ArrayList<>();
        a.add(5);
        a.add(9);
        a.add(1);
        Collections.sort(a);
        for (int i = 0; i < 3; i++) {
            System.out.println(a.get(i));

        }
2.关于对象
 List<User> userList = new ArrayList<>();
        User auser = new User("liu", "sdf");
        User buser = new User("wang", "sag");
        User cuser = new User("qiu", "af");
        userList.add(auser);
        userList.add(buser);
        userList.add(cuser);
        Collections.sort(userList, new Comparator<User>() {
            @Override
            public int compare(User user, User t1) {
                return user.getName().compareTo(t1.getName());
            }
        });

3.Arrays和Collections

Arrays.sort([]int); 针对的是普通类型
Collections.sort(list); 针对的是集合类型

4.如何输出list

List<User> userList = new ArrayList<>();
        User auser = new User("liu", "sdf");
        User buser = new User("wang", "sag");
        User cuser = new User("qiu", "af");
        userList.add(auser);
        userList.add(buser);
        userList.add(cuser);
1.
  for(User user:userList){
  System.out.println(user.getName());
2.
  for(i=0;i<userList.size();i++){
    System.out.println(userList.get(i).getName());
  }
3. 迭代
  Iterator it = userList.iterator();
  while(it.hasNext()){
      System.out.println(it.next());
  }
  或者
  while(Iterator it = userList.iterator();it.hasNext();){
      System.out.println(it.next());
  }

猜你喜欢

转载自blog.csdn.net/QQlwx/article/details/79437899