Java入门-05、Scanner类、ArrayList类、Random类基础

Scanner类

作用:数据的输入

Scanner类的认识以及使用
1、使用该类需要导包
2、使用规范:
Scanner 变量名 = new Scanner(System.in);
调用:
变量名.方法名();

import java.util.Scanner;
 public static void main(String[] args) {
        //使用Scanner一个对象sc
        Scanner sc = new Scanner(System.in);
        //调用,并创建一个变量a接收数据
        int a = sc.nextInt();
        System.out.println(a);
    }

匿名对象
1、较少调用的时候可以使用,建议少使用
2、假若多次调用,占用空间大,浪费资源

匿名对象
1、作为参数
2、作为返回值

import java.util.Scanner;
 public static void main(String[] args) {
    /*    //使用Scanner一个对象sc
        Scanner sc = new Scanner(System.in);
        //调用,并创建一个变量a接收数据
        int a = sc.nextInt();
        System.out.println(a);
    }*/
        //常用的创建对象及其使用
        Scanner in = new Scanner(System.in);
        int i = in.nextInt();
        System.out.println(i);

        //匿名对象   每使用一次就要创建新的对象,会占用内存,浪费资源空间
        int i1 = new Scanner(System.in).nextInt();//创建了新的对象
        int i2 = new Scanner(System.in).nextInt();//创建了新的对象
        int i3 = new Scanner(System.in).nextInt();//创建了新的对象
        System.out.println(i1);

        System.out.println("=====================");
        //以下两种调用方法等效,一种是原有的对象直接作为参数传递,
        // 另一种是直接创建一个新的匿名对象
        Input(in);
        Input(new Scanner(System.in));

    }

    //作为参数
    public static void Input(Scanner in) {
        System.out.println(in.nextInt());
    }

    //作为返回值
    public static Scanner Input1() {
        Scanner in = new Scanner(System.in);
        System.out.println(in.nextInt());
        return in;
    }

ArrayList类

Arraylist容器:
Arraylist list = new Arraylist(); 该容器可以存放任意类型的数据
又等同于 ArrayList<Object> list = new ArrayList<Object>();

ArrayList<E> list = new Arraylist<>(); <E>是泛型,表示一种数据类型
该集合只能添加指定类型的数据

集合的大小:定义的集合对象.size();
元素添加:定义的集合对象.add(元素);
元素的删除:定义的集合对象.remove(元素的位置);
元素的查找:定义的集合对象.get(元素的位置);

import java.util.ArrayList;
 public static void main(String[] args) {


        //非指定数据类型集合对象的创建
        //ArrayList list = new ArrayList();建议少使用,没有指定数据类型难以操作

        //指定数据类型集合对象的创建
        ArrayList<String> list = new ArrayList<>();
        // ArrayList<String> list = new ArrayList<>(String);可以省略后面括号的String

        //ArrayList集合的添加   这里以String类型为例添加元素
        String s = "张三";
        list.add(s);

        list.add("李四");
        list.add("王五");
        list.add("老六");

        //假若不想一项项添加,则可以用循环添加

        System.out.println(list);//打印list的元素

        //ArrayList移除指定位置的元素
        //这里把集合下标为1的元素移除,这里就是吧“张三”移除
        list.remove(1);

        //将移除的元素作为返回值,接收了还能继续使用,否则在内存中消失
        //String remove = list.remove(1);
        //System.out.println(remove);则还可以输出被移除的元素


        //ArrayList查看指定位置的元素
        System.out.println(list.get(2));
        //或者用变量接收,在输出
        String s1 = list.get(1);
        System.out.println(s1);

        //一个一个遍历集合内元素
        for (int i = 0; i < list.size(); i++) {
            String string = list.get(i);
            System.out.println(string);
        }

    }

ArrayList集合如何保存基本类型数据

1、不能够直接保存基本类型数据即不能在泛型内<E>写基本数据类型
举例:<int>  <char>均会报错
2、要把基本类型转换为 对应的引用类型(包装类)

八类引用类型:
特别:int --->Integer
     char --->Character
     其他六种则首字母为大写即可

     举例:ArrayList<Integer> list = new ArrayList<>;

import java.util.ArrayList;
 public static void main(String[] args) {

        //ArrayList<int> list = new ArrayList<>();报错
        ArrayList<Integer> list = new ArrayList<>();
        for (int i = 0; i < 10; i++) {
            list.add(i);
        }
        System.out.println(list);

        //遍历
        for (int i = 0; i < list.size(); i++) {
            Integer temp = list.get(i);
            System.out.println(temp);

        }
    }

Random类

随机类Randomd的认识以及使用
先创建对象:Random 对象名 = new Random();
使用:     对象名.方法名();

import java.util.ArrayList;
import java.util.Random;
import java.util.Scanner;
 public static void main(String[] args) {
        //创建对象
        Random random = new Random();
        //调用类方法
        //输出的i的值会比较大,原因是没有范围限制,会在int类型的范围输出素质
        int i = random.nextInt();
        System.out.println(i);
        //解决i数值输出太大的问题可以设置随机数输出的范围
        int j = random.nextInt(10);//j的随机取值为0到9,不包括10
        System.out.println(j);
}
发布了14 篇原创文章 · 获赞 8 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/NeverFG/article/details/97612437
今日推荐