Java SE 05(Scanner、Random、ArrayList、JavaBean)

API

API(Application Programming Interface),应用程序编程接口。Java API是一本程序员的字典 ,是JDK中提供给 我们使用的类的说明文档。

Scanner类

一个可以解析基本类型和字符串的简单文本扫描器

Scanner sc = new Scanner(System.in);
int i = sc.nextInt();

注:备注:System.in 系统输入指的是通过键盘录入数据。

引用类型使用步骤

导包:

除了Java.Lang包下的类不需要导入,其他的必须导入才能使用
导包的格式: import 包名.类名;

java.util.Scanner;

创建对象:

使用该类的构造方法,创建一个该类的对象。
格式:

数据类型 变量名 = new 数据类型(参数列表);
//举例:
Scanner sc = new Scanner(System.in);

调用方法:

调用该类的成员方法,完成指定功能。

格式:变量名.方法名();
//例如:
int  i  =  sc.nextInt();  //  接收一个键盘录入的整数

案例:

//键盘录入三个数据并获取最大值
    public class Exercise {
    public static void main(String[] args) {
        Scanner s = new Scanner(System.in);
        System.out.println("请输入第一个数据");
        int num1 = s.nextInt();
        System.out.println("请输入第二个数据");
        int num2 = s.nextInt();
        System.out.println("请输入第三个数据");
        int num3 = s.nextInt();
        int temp = num1 > num2 ? num1 : num2;
        int max = temp > num3 ? temp : num3;
        System.out.println(max);
    }
}

匿名对象:(没有名的对象) 只创建对象语句,没有把对象地址值赋值给某个变量

格式:

new 类名(参数列表);
举例:new Scanner(System.in);
应用:
1.创建匿名对象直接调用方法,没有变量名。优点:简洁

new Scanner(System.in).nextInt()

2.一旦调用两次方法,相当于创建了两个对象。缺点:浪费

new Scanner(System.in).nextInt();
new Scanner(System.in).nextInt();

注:一个匿名对象,只能使用一次
3.匿名对象可以作为方法的参数和返回值

1.作为参数:

public class Test02Scanner {
    public static void main(String[] args) {
          //普通方法
       Scanner sc = new Scanner(System.in);
        input(sc);
//        //匿名对象作为方法的接收参数
        input(new Scanner(System.in));
    }
    public static void input(Scanner scanner){
        System.out.println(scanner);
    }
}

2.作为返回值

public class Test03Scanner {
    public static void main(String[] args) {
        // 匿名对象作为返回值
        getScanner();
    }
    public static Scanner getScanner(){
        // 普通方式scanner的返回值
//        Scanner scanner = new Scanner(System.in);
//        return scanner;

        //匿名对象作为方法的返回值
        return new Scanner(System.in);
   }
}

Random类

Random类
此类的实例用于生成伪随机数。

例如:
Random r = new Random();
int i = r.nextInt();

案例:

public class Test02Random {
    //游戏开始生成一个1-100之间的随机整数number,玩家猜测一个数字guessnumber
    //系统提示猜大了 还是猜小了,直到玩家猜对
    public static void main(String[] args) {
        Scanner s = new Scanner(System.in);
        Random random = new Random();
        int i = random.nextInt(100) + 1;
        while (true) {
            System.out.println("请输入你猜的数");
            int guessNumber = s.nextInt();
            if (guessNumber < i) {
                System.out.println("猜小了" + i);
            } else if (guessNumber > i) {
                System.out.println("猜大了" + i);
            } else {
                System.out.println("猜对了");
                break;
            }
        }
    }
}

ArrayList类

一般的对象数组 Student[ ] students = new Student[ ] 长度是固定的,无法适应数据变化的需求。所以Java提供了另一个容器java.util.ArrayList集合类,让我们可以更便捷的存储和操作对象数据。

java.util.ArrayList 是大小可变的数组的实现,存储在内的数据称为元素。此类提供一些方法来操作内部存储的元素。 ArrayList 中可不断添加元素,其大小也自动增长。

ArrayList使用步骤
  • 查看类

java.util.ArrayList <E> :该类需要 import导入使后使用。
<E> :表示一种指定的数据类型,叫做泛型。
E :取自Element(元素)的首字母。在出现 E 的地方,我们使
用一种引用数据类型将其替换即可,表示我们将存储哪种引用类型的元素。
代码如下:ArrayList<String>,ArrayList<Student>、

  • 查看构造方法:

public ArrayList() :构造一个内容为空的集合。

  • 基本格式:

ArrayList<String> list = new ArrayList<String>();

  • 在JDK 7后,右侧泛型的尖括号之内可以留空,但是<>仍然要写。简化格式:

ArrayList<String> list = new ArrayList<>();

  • 查看成员方法:
public boolean add(E e) : 将指定的元素添加到此集合的尾部。
参数 E e ,在构造ArrayList对象时, <E> 指定了什么数据类型,那么 add(E e) 方法中,只能添加什么数据
类型的对象。
  • 使用ArrayList类,存储三个字符串元素,代码如下:
public class Test02StudentArrayList {
public static void main(String[] args) {
//创建学生数组
ArrayList<String> list = new ArrayList<>();
//创建学生对象
String s1 = "曹操";
String s2 = "刘备";
String s3 = "孙权";
//打印学生ArrayList集合
System.out.println(list); //  输出的为[ ]
//把学生对象作为元素添加到集合
list.add(s1);
list.add(s2);
list.add(s3);
//打印学生ArrayList集合
System.out.println(list);  
}
}

ArrayList常用方法和遍历

对元素的操作,增、删、改、查:

  • 创建 ArrayList<E> list = new ArrayList<String>();
  • 添加 :
  1. list.add(E e) 将指定的元素添加到此列表的尾部。
  2. list.add(int index, E element) 将指定的元素插入此列表中的指定位置。
  • ArrayList 中元素的个数 list.size() 返回此列表中的元素数
  • 访问 : get(int index) 返回此列表中指定位置上的元素。
  • 遍历:for (int i = 0; i < list.size() ; i++) {
    //循环体
    }
    -删除: remove(int index) :移除此集合中指定位置上的元素。返回被删除的元素。
public class Demo01ArrayListMethod {
public static void main(String[] args) {
//创建集合对象
ArrayList<String> list = new ArrayList<String>();
//添加元素
list.add("hello");
list.add("world");
list.add("java");
//public E get(int index):返回指定索引处的元素
System.out.println("get:"+list.get(0));
System.out.println("get:"+list.get(1));
System.out.println("get:"+list.get(2));
//public int size():返回集合中的元素的个数
System.out.println("size:"+list.size());
//public E remove(int index):删除指定索引处的元素,返回被删除的元素
System.out.println("remove:"+list.remove(0));
//遍历输出
for(int i = 0; i < list.size(); i++){
System.out.println(list.get(i));
}
}
}

存储基本数据类型

ArrayList对象不能存储基本类型,只能存储引用类型的数据。类似 <int> 不能写,但是存储基本数据类型对应的
包装类型是可以的。所以,想要存储基本类型数据, <> 中的数据类型,必须转换后才能编写,转换写法如下:

基本类型 基本类型包装类
byte Byte
short Short
int Integer
long Long
float Float
double Double
char Character
boolean Boolean

JavaBean

JavaBean  爪哇 的 咖啡豆 是一种Java的标准规范
符合JavaBean的类要求:
1.类必须是具体的和公共的 
2.并且具有无参构造方法
3.提供用来操作成员变量的set和get方法,和数据库中表字段对应的实体类就是一个典型的JavaBean
  • 格式

    成员变量
    无参构造方法【必须】
    有参构造方法【建议】
    成员方法
    getXXX()
    setXXX()

public class StudentJavaBean {
    //格式
    //成员变量
    private  String name;
    private  int age;
    //无参构造方法【必须】
    public StudentJavaBean(){
    }
    //有参构造方法【建议】
    public StudentJavaBean(String name, int age){
        this.name = name;
        this.age = age;
    }
    //成员方法
    //getXXX()
    public String getName(){
        return name;
    }
    public int getAge(){
        return age;
    }
    //setXXX()
    public void setName(String name){
        this.name = name;
    }
    public void setAge(int age){
        this.age = age;
    }
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容