Scanner,Random,ArrayList 基本使用规则

Scanner

Scanner类是一个文本扫描器类,对字符串文本进行扫描操作。

Scanner主要作用--------------接受用户输入的值

1、首先需要构造一个Scanner类的对象,并且与标准输入流System.in关联

 类型  变量名 = new 类型();
 Scanner scanner = new Scanner(System.in);

2,调用Scanner类对象,scanner的方法从输入流中获取你需要的输入

变量.功能名字();
scanner.nextInt();//只接收整数数值,
Scanner.next();//只接收字符串类型的数值,

运用分为四个步骤:

1.实例化扫描对象,用来扫描系统的标准输入键盘

Scanner sc=new Scanner(System.in);

2.打印一个提示信息提示用户输

System.out.println("请在控制台输一个数");

3.接受用户键盘的输入入内容

int num=scanner.nextInt();

4.使用用户输入的内容

System.out.println("你输入的数是"+num);

Random

random类用于--------------生成随机数字

Random 类每次调用它最多可提供 32 个伪随机生成的位。

Random类与Scanner的用法基本上一样;

使用步骤:

  • 导入包
  • import java.util.Random;
  • 创建对象
  • Random r = new Random();
  • 产生随机数
  • int num = r.nextInt(10);
  • 解释: 10代表的是一个范围,如果括号写10,产生的随机数就是0-9,要想获取到10的值那么就要在括号后面写上+1可以实现;

 结合Scanner输入流和Random随机数,实现猜数字的游戏

package com.hp.text01;

import java.util.Random;
import java.util.Scanner;

import static java.lang.System.in;


public class Scanner和Randon随机生成数字猜数字 {
    public static void main(String[] args) {
        //随机生成一个1——100之间的数字,然后用户猜数字,判断大了提示大了,小了提示小了,猜对了提示猜对了然后进行次数的统计结束程序
        Scanner scanner=new Scanner(in);//构造一个新的 Scanner,它生成的值是从指定的输入流扫描的。使用户从system,in读取一个数
        Random reandom=new Random();//创建一个新的随机数生成器。Random此类的实例用于生成伪随机数流,每次调用它最多可提供 32 个伪随机生成的位。
        int num=reandom.nextInt(100)+1;//生成0——99  再加1   1——100
        int counter=1;//设置个空值,统计猜的总次数
        //使用da--while死循环进行猜数字,知道猜的数正确结束死循环
        do {
            System.out.println("请输入你猜的数字:");
            int input=scanner.nextInt();
            //判断输入的数字大小
            if (input>num){
                System.out.println("你输入的数字大了!!");
            } else if (input<num) {
                System.out.println("你输入的数字小了!!");
            } else {
                System.out.println("恭喜你猜对了!!!!");
                break;//结束关闭循环
            }
            counter++;//总和进行加一
        }while (true);
    }
}

输出的结果

请输入你猜的数字:
50
你输入的数字小了!!

请输入你猜的数字:
90
你输入的数字大了!!

请输入你猜的数字:
81
恭喜你猜对了!!!!

ArrayList

ArrayList 类-------

集合:是一个动态数组,随着元素的增加长度可以自由增长,集合封装了丰富的增删改查操作
     集合是底层的一种动态数组

ArrayList 继承了 AbstractList ,并实现了 List 接口。

ArrayList使用步骤:

1.  ArrayList 类位于 java.util 包中,使用前需要引入它,语法格式如下:

代码如下(示例):

import java.util.ArrayList; // 引入 ArrayList 类
 
ArrayList<E> objectName =new ArrayList<>();  // 初始化
  • E: 泛型数据类型,用于设置 objectName 的数据类型,只能为引用数据类型
  • objectName: 对象名

2.  添加元素,添加元素到 ArrayList 可以使用 add() 方法 。 添加并遍历元素如下:

//static方法一般称作静态方法,由于静态方法不依赖于任何对象就可以进行访问,
// 因此对于静态方法来说,是没有this的,因为它不依附于任何对象,既然都没有对象,就谈不上this了。
public class ArraylLIst数组集合 {
    public static void main(String[] args) {
        //集合:是一个动态数组,随着元素的增加长度可以自由增长,集合封装了丰富的增删改查操作
        //集合是底层的一种动态数组
        ArrayList<String>list=new ArrayList<>();
        list.add("zs");
        list.add("ls");
        list.add("laysi");
        list.add("jacek");
        System.out.println(list);
        list.add(2,"马云");
        System.out.println(list);
        System.out.println(list.get(3));
        
    }
}

输出结果:

[zs, ls, laysi, jacek]
[zs, ls, 马云, laysi, jacek]
laysi

3.删除元素,如果要删除 ArrayList 中的元素可以使用 remove() 方法:

public class RunoobTest {
    public static void main(String[] args) {
        ArrayList<String> sites = new ArrayList<String>();
        sites.add("Google");
        sites.add("Runoob");
        sites.add("Taobao");
        sites.add("Weibo");
        sites.remove(3); // 删除第四个元素
        System.out.println(sites);
    }
}
[Google, Runoob, Taobao]

4,修改 ArrayList 中的元素可以使用 set() 方法:

 public static void main(String[] args) {
        ArrayList<String> sites = new ArrayList<String>();
        sites.add("weipinhui");
        sites.add("pinduoduo");
        sites.add("Taobao");
        sites.add("jingdong");
        sites.set(2, "Weixin"); // 第一个参数为索引位置,第二个为要修改的值
        System.out.println(sites);
    }

 4,计算元素大小 .size()关键字判断你添加数组有几个值

 
public class RunoobTest {
    public static void main(String[] args) {
        ArrayList<String> sites = new ArrayList<String>();
        sites.add("Google");
        sites.add("Runoob");
        sites.add("Taobao");
        sites.add("Weibo");
        System.out.println(sites.size());//   .size()关键字判断你添加数组有几个值
    }
}

 使用Scanner、Random、ArrayList完成一个不重复的点名程序

public static void main(String[] args) {
        //使用Scanner,Random,ArrayList完成一个不重复的随机点名程序

        //使用ArrayList把数据转换成集合,这是一个固定数组的形式
        List<String>list1= Arrays.asList("小红","小甜","小美","小爱","小明","小华","小张","小李","小乐","小天");
        //通过构造方法创建名单集合:把List集合中元素一一取出存入names集合中去
        ArrayList<String>names=new ArrayList<>(list1);

        //使用Scanner,Random,ArrayList完成一个不重复的随机点名程序
        Random random=new Random();
        Scanner scanner=new Scanner(in);

        while (true){
            if (names.size()==0){
                System.out.println("本次点名结束,请重新开始。");
                break;
            }
            System.out.println("点名请输入Y/y");
            String input=scanner.next();//获取输入的内容
            if (input.equals("Y")||input.equals("y")){
                int index=random.nextInt(names.size());//随机产生集合索引范围内的一个值
                String name=names.get(index);//根据索引获取对应位置元素,就是获取数组长度
                System.out.println(name+"--------命中注定");
                names.remove(index);

            }else {
                System.out.println("点名结束,欢迎下次使用本程序。");
                break;
            }
        }
    }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值