测试内容: TreeMap<Person,Integer> 的两级排序 1.先按Person.id 从小到大 (需要把int类型转换成包装类 Integer, 才可以使用p1.getId().compareTo( p2.getId())) 2.若id重复,则按然后再按Person.Name 从小到大排序(可以使用String类内置的 compareTo()) 测试代码: package 任务151;import java.lang.*;import java.util.*;public cla…
title: Java基础语法(8)-数组中的常见排序算法 blog: CSDN data: Java学习路线及视频 1.基本概念 排序: 是计算机程序设计中的一项重要操作,其功能是指一个数据元素集合或序列重新排列成一个按数据元素某个数据项值有序的序列. 排序码(关键码): 排序依据的数据项. 稳定排序: 排序前与排序后相同关键码元素间的位置关系,保持一致的排序方法. 不稳定排序: 排序前与排序后相同关键码元素间的相对位置发生改变的排序方法. 内排序: 指待排序列完全存放在内存中所进行的排序.内…
Map和Collections是同级别的,不能像List排序那样直接用Collections.sort(new Comparator<?>(){ 复写compara方法}); HashMap没有排序 TreeMap默认排序为升序,注意是按键值key排序 package com.swift; import java.util.Comparator; import java.util.Map; import java.util.Scanner; import java.util.TreeMap;…
1. 简介 我们讲到了如何使用关键字synchronized来实现同步访问.本文我们继续来探讨这个问题,从Java 5之后,在java.util.concurrent.locks包下提供了另外一种方式来实现同步访问,那就是Lock. 也许有朋友会问,既然都可以通过synchronized来实现同步访问了,那么为什么还需要提供Lock? 从synchronized的缺陷讲起,然后再讲述java.util.concurrent.locks包下常用的有哪些类和接口,最后讨论以下一些关于锁的概念方面的东…
不同修饰符使用细节 常用来修饰类.方法.变量的修饰符 public 权限修饰符,公共访问, 类,方法,成员变量 protected 权限修饰符,受保护访问, 方法,成员变量 默认什么也不写 也是一种权限修饰符,默认访问, 类,方法,成员变量 private 权限修饰符,私有访问, 方法,成员变量 static 静态修饰符 方法,成员变量 final 最终修饰符 类,方法,成员变量,局部变量 abstract 抽象修饰符 类 ,方法 我们编写程序时,权限修饰符一般放于所有修饰符之前,不同的权限修饰…
String service_time = "6:00:00,7:00:00,8:00:00,9:00:00,10:00:00,11:00:00,12:00:00,13:00:00,14:00:00,15:00:00,16:00:00,17:00:00,18:00:00,19:00:00,20:00:00,21:00:00,22:00:00 "; List<String> list = StringUtil.stringToList(service_time, "…
感到脸红:int是整形 -128~127 Integer是正整型,你怎么会想到这样的回答,妈的,有脑子吗?!!! 1,int是基本数据类型,初始为0,Integer为封装类,初始为null ①无论如何,Integer与new Integer不会相等.不会经历拆箱过程,i3的引用指向堆,而i4指向专门存放他的内存(常量池),他们的内存地址不一样,所以为false  ②两个都是非new出来的Integer,如果数在-128到127之间,则是true,否则为false  java在编译Integer…
28 [程序 28 排序算法] 题目:对 10 个数进行排序 程序分析:可以利用选择法,即从后 9 个比较过程中,选择一个最小的与第一个元素交换, 下次类推,即 用第二个元素与后 8 个进行比较,并进行交换. package cskaoyan; public class cskaoyan28 { @org.junit.Test public void sort() { java.util.Scanner in = new java.util.Scanner(System.in); int[] a…
15 [程序 15 排序] 题目:输入三个整数 x,y,z,请把这三个数由小到大输出. 程序分析:我们想办法把最小的数放到 x 上,先将 x 与 y 进行比较,如果 x>y 则将 x 与 y 的值进行交换, 然后再用 x 与 z 进行比较,如果 x>z 则将 x 与 z 的值进行交换,这样能使 x 最小. package cskaoyan; public class cskaoyan15 { private static int x; private static int y; private…
Comparator有两种实现方式: 1,匿名内部类 2,创建一个类用于实现Comparator,该类创建的对象就是比较器 Person类 public class Person implements Comparable<Person> { private String name; private String sex; private int age; private Book books; public String getName() { return name; } public v…