java随机数用scanner_JavaApi01-Scanner-Random-ArrayList

Api01-Scanner类、Random类、ArrayList 类

提纲

Api概述

Scanner类

Random类

ArrayList类

Api

概述

API(Application Programming Interface),应用程序编程接口。JavaAPI是一本程序员的字典 ,是JDK中提供给我们使用的类的说明文档。这些类将底层的代码实现封装了起来,我们不需要关心这些类是如何实现的,只需要学习这些类如何使用即可。所以我们可以通过查询API的方式,来学习Java提供的类,并得知如何使用它们。

Api离线文档获取

提取码:avmz

Scanner类

什么是Scanner类

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

Scanner sc = new Scanner(System.in);

int i = sc.nextInt();

备注:System.in 系统输入(指从键盘录入)

Scanner使用步骤

导包

使用import关键字导包,在类的所有代码之前导包,引入要使用的类型,java.lang包下的所有类无需导入。

//import 包名.类名;

import java.util.Scanner;

创建对象

//数据类型 变量名 = new 数据类型(参数列表);

Scanner sc = new Scanner(System.in);

调用方法

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

//变量名.方法名();

int i = sc.nextInt();//接收一个键盘录入的整数

使用示例

import java.util.Scanner;//导包

public static void main(String[] args){

//创建对象

Scanner sc = new Scanner(System.in);

//接收数据

System.out.println("please input a number:");

int numInput = sc.nextInr();

//输出数据

System.out.println("input number is:" + numInput);

}

扩展

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

// new 类名(参数列表)

new Scanner(System.in)

简化代码,但是多次调用会浪费资源

Demo

Demo01:键入两个数,求和

Demo02:键入三个数,求最大值

Demo03:匿名对象

import java.util.Scanner;

public class Demo01_Scanner {

public static void main(String[] args) {

twoSum();

maxNumber();

newScanner();

}

public static boolean twoSum() {

int num1 = 0;

int num2 = 0;

Scanner scanner = new Scanner(System.in);

System.out.println("请输入第一个数");

try {

num1 = scanner.nextInt();

System.out.println("first input number" + num1);

} catch (Exception e) {

System.out.println("you input number format is Error");

return false;

}

System.out.println("请输入第二个数");

try {

num2 = scanner.nextInt();

System.out.println("first input number" + num2);

} catch (Exception e) {

System.out.println("you input number format is Error");

return false;

}

int sum = num1 + num2;

System.out.println("two number sum is" + sum);

return true;

}

public static boolean maxNumber(){

int a, b, c = 0;

Scanner scanner = new Scanner(System.in);

System.out.println("请输入第一个数");

try {

a = scanner.nextInt();

System.out.println("first input number" + a);

} catch (Exception e) {

System.out.println("you input number format is Error");

return false;

}

System.out.println("请输入第一个数");

try {

b = scanner.nextInt();

System.out.println("first input number" + b);

} catch (Exception e) {

System.out.println("you input number format is Error");

return false;

}

System.out.println("请输入第一个数");

try {

c = scanner.nextInt();

System.out.println("first input number" + c);

} catch (Exception e) {

System.out.println("you input number format is Error");

return false;

}

int temp = (a > b ? a : b);

int max = temp > c ? temp : c;

System.out.println(a + ":" + b + ":"+ c + "的最大值为" + max);

return true;

}

public static void newScanner(){

System.out.println("请输入你想循环的次数:");

try {

int number = new Scanner(System.in).nextInt();

for (int i = 0; i < number; i++) {

System.out.println("你要循环" + number + "次,这是第" + (i+1) + "次循环");

}

} catch (Exception e) {

System.out.println("you input number format Error");

}

}

}

Random类

什么是Random

用于生成随机数

Random r = new Random();

int i = r.nextInt();

Random使用步骤

导包

import java.util.Random;

创建对象

Random r = new Random();

调用方法

int number = r.nextInt(10);//获取0到10内的随机数,[0,10)

示例

import java.util.Random;//导包

public class Demo02_Random {

public static void main(String[] args) {

//创建对象

Random random = new Random();

//调用方法

int number = random.nextInt(50);

//输出结果

System.out.println(number);

}

}

Demo

Demo01:获取1-n之间的随机数;

Demo02:猜数字小游戏

import java.util.Random;

import java.util.Scanner;

public class Demo02_Random {

private static Random random = new Random();//使用static进行修饰

public static void main(String[] args) {

function01();

function02();

}

public static void function01(){

int number = random.nextInt(50) + 1;

System.out.println(number);

}

public static void function02(){

int number = random.nextInt(100) + 1;

while(true){

System.out.println("please input you guess number:");

int temp = new Scanner(System.in).nextInt();

if(temp > number){

System.out.println("你猜的数据" + temp + "大了");

}else if(temp < number){

System.out.println("你猜的数据" + temp + "小了");

}else if(temp == number){

System.out.println("congratulation!!!");

break;

}

}

}

}

ArrayList类

什么是ArrayList类

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

ArrayList使用步骤

导包

import java.util.ArrayList;

创建对象

ArrayList list = new ArrayList();

调用方法

list.add("str");

常用方法和遍历

对于元素的操作—增、删、查。常用的方法有:

public boolean add(E e) :将指定的元素添加到此集合的尾部。

public E remove(int index):移除此集合中指定位置上的元素。返回被删除的元素。

public E get(int index) :返回此集合中指定位置上的元素。返回获取的元素。

public int size():返回此集合中的元素数。遍历集合时,可以控制索引范围,防止越界。

基本类型存储,在创建对象是不能使用基本类型,使用期引用数据类型

ArrayList list = new ArrayList();

Demo

Demo01:遍历一个String数组

Demo02:存储并遍历自定义类型数组

// Student类

@Data //使用lombok(偷懒插件)

@AllArgsConstructor

@NoArgsConstructor

class Student{

private String name;

private int age;

}

import lombok.AllArgsConstructor;

import lombok.Data;

import lombok.NoArgsConstructor;

import java.util.ArrayList;

public class Demo03_ArrayList {

private static Student[] students = new Student[3];

static {

students = new Student[3];

Student s1 = new Student("Jack", 12);

Student s2 = new Student("Marry", 14);

Student s3 = new Student("Luck", 10);

students[0] = s1;

students[1] = s2;

students[2] = s3;

}

public static void main(String[] args) {

function01();

function02();

}

public static void function01(){

System.out.println("循环遍历数组");

for (Student student : students) {

System.out.println(student.getName() + "----" + student.getAge());

}

}

public static void function02(){

ArrayList list = new ArrayList();

System.out.println("数组的基本方法");

//添加元素

list.add("hello");

list.add("Jack");

list.add("and");

list.add("Marry");

//返回数据长度

System.out.println("size:" + list.size());

for (String s : list) {

System.out.print(s + " ");

}

//移除元素

System.out.println("移除了" + list.remove(0));

//获取元素

System.out.println(list.get(0));

list.forEach(e ->{

System.out.println( "lambda" + e);

});

}

}

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值