zoukankan      html  css  js  c++  java
  • JAVA进阶11

    间歇性混吃等死,持续性踌躇满志系列-------------第11天

    1、ArrayList

     1 package cn.intcast.demo11;
     2 
     3 import java.util.ArrayList;
     4 
     5 /*
     6  * 数组的长度不可以发生改变
     7  * 但是ArrayList集合的长度是可以随意变化的
     8  *
     9  * 对于ArrayList来说,有一个尖括号<E>代表泛型。
    10  * 泛型:就是装在集合当中的所有元素,全都是统一的什么类型
    11  * 注:泛型只能是引用类型。不能是基本类型
    12  *     对于ArrayList集合来说,直接打印得到的不是地址值,而是内容
    13  *     如果内容为空,得到的是空的中括号
    14  *
    15  */
    16 public class Demo01ArrayList {
    17     public static void main(String[] args) {
    18         //创建了一个ArrayList集合,集合的名称是List,里面装的全都是String字符串类型
    19         //注:从JDK 1.7+开始,右侧的尖括号内部可以不写内容但是<>本身还是要写的
    20         ArrayList<String> list = new ArrayList<>();
    21         System.out.println(list);
    22     }
    23 }
    View Code

    运行结果图

    尖括号的泛型定义完类型之后不能添加其他类型的集合元素,否则会报错

     运行效果图

    2、ArrayList集合的常用方法和遍历

     1 package cn.intcast.demo11;
     2 
     3 import java.util.ArrayList;
     4 
     5 public class Demo01ArrayList {
     6     public static void main(String[] args) {
     7         ArrayList<String> list = new ArrayList<>();
     8         System.out.println(list);   //[]
     9 
    10         //向集合中添加元素
    11         boolean su = list.add("赵奢");
    12         System.out.println(list);
    13         System.out.println("添加是否成功:"+su);
    14         list.add("张仪");
    15         list.add("苏秦");
    16         list.add("大良造");
    17         System.out.println(list);
    18 
    19         //从集合中获取元素:get。索引值从0开始
    20         String s1 = list.get(0);
    21         System.out.println("第0号索引位置的值是:"+s1);
    22         System.out.println("========================");
    23         //遍历集合中的元素
    24         for (int i = 0; i <= 3; i++) {
    25             System.out.println(list.get(i));
    26         }
    27         System.out.println("========================");
    28         //从集合中删除元素:remove,索引值也是从0开始
    29         String whoRemoved = list.remove(3);
    30         System.out.println("被删除的人是:"+whoRemoved);
    31         System.out.println(list);
    32         System.out.println("========================");
    33         //获取集合的长度,即其中元素的个数
    34         int Size = list.size();
    35         System.out.println("集合的长度是:"+Size);
    36         System.out.println("========================");
    37         //遍历集合
    38         for (int i = 0; i < Size; i++) {
    39             System.out.println(list.get(i));
    40         }
    41     }
    42 }
    View Code

     运行效果图

    3、ArrayLi集合存储基本数据类型

     1 package cn.intcast.demo11;
     2 
     3 import java.util.ArrayList;
     4 
     5 public class Demo02ArrayList {
     6     public static void main(String[] args) {
     7         ArrayList<String> list = new ArrayList<>();
     8         //错误写法
     9 //        ArrayList<int> list1 = new ArrayList<int>();
    10         ArrayList<Integer> list1 = new ArrayList<>();
    11         ArrayList<Byte> list2 = new ArrayList<>();
    12         ArrayList<Short> list3 = new ArrayList<>();
    13         ArrayList<Long> list4 = new ArrayList<>();
    14         ArrayList<Float> list5 =new ArrayList<>();
    15         ArrayList<Double> list6 = new ArrayList<>();
    16         ArrayList<Character> list7 = new ArrayList<>();
    17         ArrayList<Boolean> list8 = new ArrayList<>();
    18 
    19         list1.add(2);
    20         list1.add(3);
    21         System.out.println(list1);
    22     }
    23 }
    View Code

     运行效果图

     

    4、生成6个1-33之间的随意整数,添加到集合,并遍历集合

     

     1 package cn.intcast.demo11;
     2 
     3 import java.util.ArrayList;
     4 import java.util.Random;
     5 
     6 public class Demo03ArrayList {
     7     public static void main(String[] args) {
     8         //创建Random对象
     9         Random r = new Random();
    10         //创建集合
    11         ArrayList<Integer> list = new ArrayList<>();
    12         //添加随机数到集合
    13         for (int i = 0; i < 6; i++) {
    14             int s = r.nextInt(33) + 1;
    15             list.add(s);
    16         }
    17         for (int i = 0; i < list.size(); i++) {
    18             System.out.println(list.get(i));
    19         }
    20     }
    21 }
    View Code

     运行效果图

    5、存储自定义对象

     1 package cn.intcast.demo11;
     2 
     3 public class Student {
     4     private String name;
     5     private String sex;
     6     private int age;
     7 
     8     public Student() {
     9     }
    10 
    11     public Student(String name, String sex, int age) {
    12         this.name = name;
    13         this.sex = sex;
    14         this.age = age;
    15     }
    16 
    17     public String getName() {
    18         return name;
    19     }
    20 
    21     public void setName(String name) {
    22         this.name = name;
    23     }
    24 
    25     public String getSex() {
    26         return sex;
    27     }
    28 
    29     public void setSex(String sex) {
    30         this.sex = sex;
    31     }
    32 
    33     public int getAge() {
    34         return age;
    35     }
    36 
    37     public void setAge(int age) {
    38         this.age = age;
    39     }
    40 }
    标准的Student类
     1 package cn.intcast.demo11;
     2 
     3 
     4 import java.util.ArrayList;
     5 
     6 public class Demo03ArrayList {
     7     public static void main(String[] args) {
     8         ArrayList<Student> list = new ArrayList<>();
     9         Student s1 = new Student("武松","男",22);
    10         Student s2 = new Student("孙二两","女",26);
    11         Student s3 = new Student("宋江","男",25);
    12         Student s4 = new Student("武大浪","男",23);
    13 
    14         list.add(s1);
    15         list.add(s2);
    16         list.add(s3);
    17         list.add(s4);
    18 
    19         for (int i = 0; i < list.size(); i++) {
    20             Student stu = list.get(i);
    21             System.out.println("姓名是:"+stu.getName()+"
    "+"性别是:"+stu.getSex()+"
    "+"年龄是:"+stu.getAge()+"
    ");
    22         }
    23     }
    24 }
    ArrayList

    运行效果图

     6、定义以指定格式打印集合的方法(ArrayList类型作为参数),使用{}扩起的集合。使用|||分隔每个元素。

     1 package cn.intcast.demo11;
     2 
     3 import java.util.ArrayList;
     4 
     5 public class Demo04ArrayList {
     6     public static void main(String[] args) {
     7         ArrayList<String> list = new ArrayList<>();
     8         list.add("金庸");
     9         list.add("武侠");
    10         list.add("科幻");
    11         list.add("玄幻");
    12         System.out.println(list);
    13         printArrayList(list);
    14     }
    15     public static void printArrayList(ArrayList<String> list){
    16         System.out.print("{");
    17         for (int i = 0; i < list.size(); i++) {
    18             String name = list.get(i);
    19             if (i==list.size()-1){
    20                 System.out.print(name+"}");
    21             }else {
    22                 System.out.print(name+"|||");
    23             }
    24         }
    25     }
    26 }
    View Code

    运行效果图

    7、筛选集合中的随机数

     1 package cn.intcast.demo11;
     2 
     3 import java.util.ArrayList;
     4 import java.util.Random;
     5 
     6 public class Demo04ArrayList {
     7     public static void main(String[] args) {
     8         ArrayList<Integer> list = new ArrayList<>();
     9         Random R = new Random();
    10         for (int i = 0; i < 20; i++) {
    11             int n = R.nextInt(50) + 1;
    12             list.add(n);
    13         }
    14         ArrayList<Integer> smalllist = getSmallList(list);
    15         for (int i = 0; i < smalllist.size(); i++) {
    16             System.out.print(smalllist.get(i)+" ");
    17         }
    18     }
    19 
    20     //这个方法接收第一个list参数,返回第二个集合结果
    21     public static ArrayList<Integer> getSmallList(ArrayList<Integer> list) {
    22         ArrayList<Integer> smallList = new ArrayList<>();
    23         for (int i = 0; i < list.size(); i++) {
    24             int num = list.get(i);
    25             if (num % 2 == 0) {
    26                 smallList.add(num);
    27             }
    28         }
    29         return smallList;
    30     }
    31 }
    View Code

    运行效果图

  • 相关阅读:
    C#中的委托和事件(续)【来自张子扬】
    C# 中的委托和事件[转自张子扬]
    .NET多线程编程入门
    python——configparser模块
    logger模块
    python——time模块
    os模块
    python——re模块
    selenium环境搭建
    iOS中的三大定时器
  • 原文地址:https://www.cnblogs.com/Anemia-BOY/p/10591226.html
Copyright © 2011-2022 走看看