当前位置: 首页 > news >正文

网站建设公司优势桃子软件

网站建设公司优势,桃子软件,php网站开发现状都用什么打开模板,企业所得税怎么算利润总额DAY7.2 Java核心基础 想学习Collection、list、ArrayList、Set、HashSet部分的小伙伴可以转到 7.1集合框架、Collection、list、ArrayList、Set、HashSet和LinkedHashSet、判断两个对象是否相等文章查看 set集合 在set集合中#xff0c;处理LinkedHashSet是有序的#xf…DAY7.2 Java核心基础 想学习Collection、list、ArrayList、Set、HashSet部分的小伙伴可以转到 7.1集合框架、Collection、list、ArrayList、Set、HashSet和LinkedHashSet、判断两个对象是否相等文章查看 set集合 在set集合中处理LinkedHashSet是有序的TreeSet的存放也是有序的但是二者之间的有序亦有区 LinkedHashSet元素的存储顺序和遍历顺序是一致的 TreeSet内部元素会按照升序的方法进行排序无论存入元素的顺序是什么都会按照升序进行输出 public static void main(String[] args) {TreeSetInteger treeSet new TreeSet();treeSet.add(1);treeSet.add(5);treeSet.add(3);treeSet.add(2);treeSet.add(1);treeSet.add(9);IteratorInteger iterator treeSet.iterator();while (iterator.hasNext()){System.out.println(iterator.next());}System.out.println(***********************);LinkedHashSetInteger linkedHashSet new LinkedHashSet();linkedHashSet.add(98);linkedHashSet.add(2);linkedHashSet.add(3);linkedHashSet.add(2);linkedHashSet.add(11);linkedHashSet.add(1);for (Integer integer : linkedHashSet) {System.out.println(integer);} }可以看见treeSet自动排序了而linkedHashSet按照添加顺序输出的但是他们两个都去除了重复元素验证了Set集合元素的唯一性 TreeSet 内部会自动按照升序对元素进行排列所以添加到 TreeSet 集合中的元素必须具备排序的功能无法排序的对象无法添加到 TreeSet 中的。 如果传递的是一个不能比较的对象 public class test {public static void main(String[] args) {TreeSet treeSet new TreeSet();treeSet.add(new A(6));treeSet.add(new A(2));treeSet.add(new A(3));treeSet.add(new A(4));} } class A{private int num;public A(int num) {this.num num;} }就会出现异常显示无法是实现比较的接口 Comparable 是排序接口实习了该接口的类就具备了排序的功能对象就可以进行排序 如果要比较我们就需要在A对象类里面实现Comparable 接口 class A implements Comparable{private int num;public A(int num) {this.num num;}/*** A.compareTo(B)* 返回值* 1表示A大于B* 0表示A等于B* -1表示A小于B* param o* return*/Overridepublic int compareTo(Object o) {if (o instanceof A){A a (A) o;return this.num - a.num;}return 0;}Overridepublic String toString() {return A{ num num };} }public class test {public static void main(String[] args) {TreeSet treeSet new TreeSet();treeSet.add(new A(6));treeSet.add(new A(2));treeSet.add(new A(3));treeSet.add(new A(4));Iterator iterator treeSet.iterator();while (iterator.hasNext()){System.out.println(iterator.next());}} }这时候输出 完美解决 Map 接口 Set List 都是Collenction的子接口Map接口是与Collenction完全独立的一个体系 Set 、List、Collenction都是只能操作一个元素而Map可以操作一对数据以Key-Value形式存在 Map接口常见方法 方法描述int size()获取集合长度boolean isEmpty()判断集合是否为空boolean containsKey(Object key)判断集合中是否存在某个 key 值boolean containsValue(Object key)判断集合中是否存在某个 value 值V get(Object key)取出集合中 key 对应的 valueV put(K key,V value)向集合中添加一组 key-value 的元素V remove(Object key)删除集合中 key 对应的 valuevoid clear()清除集合中的所有元素Set keySet()取出集合中所有的 key返回一个 Set 集合Collection values()取出集合中所有的 value返回一个 Collection 集合Set entrySet()将 Map 对象转为 Set 对象int hashCode()获取集合的散列值boolean equals(Object o)比较两个集合是否相等 Map是一个接口无法被实例化创建对象而需要通过实现类来创建对象 HashMap存储无序key不能重复值可以重复 TreeMap存储有序key不能重复值可以重复 测试方法 public class test {public static void main(String[] args) {testMapMethods();}public static void testMapMethods() {MapString, Integer map new HashMap();// 测试 put 方法map.put(a, 1);map.put(b, 2);map.put(c, 3);System.out.println(插入元素后: map);// 测试 size 方法System.out.println(集合大小: map.size());// 测试 isEmpty 方法System.out.println(集合是否为空: map.isEmpty());// 测试 containsKey 方法System.out.println(是否包含键 a: map.containsKey(a));System.out.println(是否包含键 d: map.containsKey(d));// 测试 containsValue 方法System.out.println(是否包含值 1: map.containsValue(1));System.out.println(是否包含值 4: map.containsValue(4));// 测试 get 方法System.out.println(键 a 对应的值: map.get(a));System.out.println(键 d 对应的值: map.get(d));// 测试 keySet 方法SetString keySet map.keySet();System.out.println(所有键的集合: keySet);// 测试 values 方法System.out.println(所有值的集合: map.values());// 测试 hashCode 方法System.out.println(集合的哈希码: map.hashCode());// 测试 remove 方法System.out.println(删除键 a 对应的值: map.remove(a));System.out.println(删除后: map);// 测试 replace 方法System.out.println(将键 b 的值替换为 4: map.replace(b, 4));System.out.println(替换后: map);// 测试 clear 方法map.clear();System.out.println(清空后: map);System.out.println(清空后是否为空: map.isEmpty());} }输出 朋友们可以自己取尝试调用一下这些方法 TreeMap和HashMap差不多但是这个会根据key排序 public static void main(String[] args) {TreeMapInteger, String map new TreeMap();map.put(3, Three);map.put(1, One);map.put(2, Two);map.put(2, Two);System.out.println(map); }测试 Collections 工具类 集合除了可以存储数据之外还提供了很多方法来对数据进行操作但是这些方法都有其局限性实际操作起来不是很方便JDK 提供了一个工具类 Collections专门用来操作集合添加元素、元素排序、替换元素。 Collections 常用方法 方法描述sort根据集合泛型对应的类实现的 Comparable 接口对集合进行排序sort根据 Comparator 接口对集合进行排序binarySearch查找元素在集合中的下标要求集合元素必须是升序排列get根据下标找到集合中的元素reverse对集合元素的顺序进行反转swap交换集合中指定位置的两个元素fill将集合中的所有元素进行替换min返回集合中最小的元素max返回集合中最大的元素replaceAll将集合中的所有元素进行替换addAll向集合中添加元素 部分代码示例 sort方法 // 定义一个实现了Comparable接口的类 class Person implements ComparablePerson {private String name;private int age;public Person(String name, int age) {this.name name;this.age age;}Overridepublic int compareTo(Person p) {return Integer.compare(this.age, p.age);}Overridepublic String toString() {return Person{name name , age age };} }public class TestSort {public static void main(String[] args) {ListPerson list new ArrayList();list.add(new Person(Alice, 25));list.add(new Person(Bob, 30));list.add(new Person(Charlie, 20));Collections.sort(list); // 根据age排序System.out.println(list);} }输出 实现compareTo方法然后可以使得按照age排序 binarySearch (查找元素下标要求集合升序排列) public static void main(String[] args) {ListInteger list Arrays.asList(1, 3, 5, 7, 9);int index Collections.binarySearch(list, 5); // 返回元素5的索引System.out.println(Index of 5: index); }输出 get (根据下标找到集合中的元素) public static void main(String[] args) {ListString list Arrays.asList(apple, orange, banana);String element list.get(1); // 获取第二个元素System.out.println(Element at index 1: element); }reverse (反转集合顺序) public static void main(String[] args) {ListString list Arrays.asList(apple, orange, banana);Collections.reverse(list);System.out.println(Reversed list: list); }swap (交换指定位置的两个元素) public static void main(String[] args) {ListString list Arrays.asList(apple, orange, banana);Collections.swap(list, 0, 2); // 交换第一个和第三个元素System.out.println(Swapped list: list); }fill (将集合中的所有元素替换为指定值) public static void main(String[] args) {ListString list new ArrayList(Arrays.asList(apple, orange, banana));Collections.fill(list, fruit);System.out.println(Filled list: list); }min (返回集合中最小的元素)、max (返回集合中最大的元素) public static void main(String[] args) {ListInteger list Arrays.asList(5, 3, 8, 1, 9);Integer max Collections.max(list);Integer min Collections.min(list);System.out.println(Maximum value: max);System.out.println(Minimum value: min); }replaceAll (将集合中的所有元素替换为指定值) public static void main(String[] args) {ListString list Arrays.asList(apple, orange, banana);Collections.replaceAll(list, apple, fruit);System.out.println(Replaced list: list); }addAll (向集合中添加所有指定元素) public static void main(String[] args) {ListString list new ArrayList();ListString toAdd Arrays.asList(apple, orange, banana);Collections.addAll(list, grape, peach);// 或者使用addAll方法list.addAll(toAdd);System.out.println(Added list: list); }
http://www.dnsts.com.cn/news/241912.html

相关文章:

  • 注册域名成功后怎样建设网站wordpress建立仿站
  • 网站建设合同 技术合同范本微信app下载安装最新版
  • 做网站的广告词seo优化关键词0
  • 网站建设网站及上传徐州网站建设解决方案
  • 自定义网站主页设计济南小程序制作公司
  • 邯郸营销网站建设南昌建站方案
  • 网站维护案怎样开一家公司
  • php语言开发网站流程怎么建立网站模版
  • 做seo_教你如何选择网站关键词企业建网站多少钱
  • 深圳实力网站建设做网站要学的代码
  • 做网站怎么做推广品牌建设的步骤
  • 如何使用ps做网站智慧团建系统登录入口官网
  • 建立网站站点的过程中不正确的是梅州专业网站建设教程
  • 文化网站源码3建设营销型网站流程图
  • 600元做网站鞍山网站制作招聘网
  • 邢台建设企业网站营销型网站建设市场
  • 学做网站论坛VIP怎么样纸 技术支持 东莞网站建设
  • phpcms做双语网站绍兴网站优化
  • 做的网站名国外外链平台
  • 姑苏区住房和建设局网站海南做公司网站
  • 下载类网站 前置备案wordpress 文档预览
  • 自考免费自学网站包头企业网站制作
  • 网站开发管理制度绿色网站风格
  • 网站一起做网店深圳设计公司官网
  • 网站图标icoetherna 简洁商业企业wordpress
  • jq特效网站模板珠海建设网站首页
  • 天长做网站公司hao123主页
  • 江门网站自助建站多商户小程序开发教程
  • 网站建设的总体需求分析营销型网站建设原则
  • 夏天做哪些网站致富WordPress连接微博