java_Scanner类、Random类、ArrayList 类的使用
Scanner类
一个可以解析基本类型和字符串的简单文本扫描器。 例如,以下代码使用户能够从 System.in 中读取一个数:
Scanner in=new Scanner(System.in);
int i = in.nextInt();
引用类型使用步骤
导包
使用import关键字导包,在类的所有代码之前导包,引入要使用的类型,java.lang包下的所有类无需导入。
格式:import 包名.类名;
创建对象
调用该类的成员方法,完成指定功能。
格式:变量名.方法名();
Scanner使用步骤
import java.util.Scanner;
public class Demo{
public static void main(String[] args) {
//2.创建键盘录入数据的对象
Scanner in=new Scanner(System.in);
//3.接收数据
System.out.println("请输入一个整数: ");
int i = in.nextInt();
//4.输出数据
System.out.println("i: "+i);
}
}
Random类
//1.导包
import java.util.Random;
public class Demo1 {
public static void main(String[] args) {
//创建随机数对象
Random r=new Random();
for(int i=0;i<30;i++){
//生成一个随机数(0-10之间的随机数(不包括10))
int number = r.nextInt(10);
//输出数据
System.out.println("number: "+number);
}
}
}
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 Demo1 {
public static void main(String[] args) {
//创建集合
ArrayList<String> list=new ArrayList<>();
System.out.println(list);
String s1="张三";
String s2="李四";
String s3="王五";
//将元素添加进集合
list.add(s1);
list.add(s2);
list.add(s3);
System.out.println(list);
}
}
常用方法和遍历
对于元素的操作,基本体现在——增、删、查。常用的方法有:
public boolean add(E e) :将指定的元素添加到此集合的尾部。
public E remove(int index) :移除此集合中指定位置上的元素。返回被删除的元素。
public E get(int index) :返回此集合中指定位置上的元素。返回获取的元素。
public int size() :返回此集合中的元素数。遍历集合时,可以控制索引范围,防止越界。
代码如下:
public class Demo1 {
public static void main(String[] args) {
//创建集合
ArrayList<String> list=new ArrayList<>();
list.add("Java");
list.add("Spring");
list.add("MyBatis");
//E get(int index) 返回此列表中指定位置的元素。
System.out.println(list.get(0));
System.out.println(list.get(1));
System.out.println(list.get(2));
//int size() 返回此列表中的元素数。
System.out.println(list.size());
//public E remove(int index)
String ele = list.remove(0);
System.out.println(ele);
for(int i=0;i<list.size();i++){
System.out.println(list.get(i));
}
}
}
存储基本数据类型
ArrayList 对象不能存储基本类型,只能存储引用类型的数据。类似 不能写,但是存储基本数据类型对应的包装类型是可以的。所以,想要存储基本类型数据, <> 中的数据类型,必须转换后才能编写,转换写法如下:
| 基本类型 | 基本包装类型 |
|---|---|
| byte | Byte |
| short | Short |
| int | Integer |
| long | Long |
| float | Float |
| double | Double |
| char | Character |
| boolean | Boolean |
只有 Integer 和 Character 需要特殊记忆,其他基本类型只是首字母大写即可。
存储基本类型数据,代码如下:
public class Demo1 {
public static void main(String[] args) {
ArrayList<Integer> list=new ArrayList<>();
list.add(1);
list.add(2);
list.add(3);
list.add(4);
System.out.println(list);
}
}
数值添加到集合练习
生成5个1~100之间的随机整数,添加到集合,并遍历
public class Demo1 {
public static void main(String[] args) {
//生成5个1~100之间的随机整数,添加到集合,并遍历
ArrayList<Integer> list=new ArrayList<>();
Random r=new Random();
for(int i=0;i<5;i++){
int number = r.nextInt(100)+1;
list.add(number);
}
for(int i=0;i<list.size();i++){
System.out.println(list.get(i));
}
}
}
对象添加到集合练习
自定义4个学生对象,添加到集合,并遍历
public class Demo1 {
public static void main(String[] args) {
//创建集合
ArrayList<Student> list=new ArrayList<>();
//创建学生对象
Student s1=new Student("张三",38);
Student s2=new Student("李四",45);
Student s3=new Student("王五",29);
Student s4=new Student("赵六",42);
//将元素添加到集合
list.add(s1);
list.add(s2);
list.add(s3);
list.add(s4);
for(int i=0;i<list.size();i++){
Student s = list.get(0);
System.out.println("姓名: "+s.getName()+";年龄: "+s.getAge());
}
}
}
java_Scanner类、Random类、ArrayList 类的使用的更多相关文章
- Date日期类,Canlendar日历类,Math类,Random随机数学类
Date日期类,SimpleDateFormat日期格式类 Date 表示特定的时间,精确到毫秒 常用方法 getTime() setTime() before() after() compareT ...
- Java API —— ArrayList类 & Vector类 & LinkList类
1.ArrayList类 1)ArrayList类概述 · 底层数据结构是数组,查询快,增删慢 · 线程不安全,效率高 2)ArrayList案例 ...
- Scanner类、Random类、ArrayList 类
1.1 什么是Scanner类一个可以解析基本类型和字符串的简单文本扫描器. 例如,以下代码使用户能够从 System.in 中读取一个数: Scanner sc = new Scanner(Syst ...
- 01 语言基础+高级:1-3 常用API第一部分_day07【Scanner类、Random类、ArrayList类】
day07[Scanner类.Random类.ArrayList类] Scanner类Random类ArrayList类 教学目标 能够明确API的使用步骤能够使用Scanner类获得键盘录入数据能够 ...
- java自学第4期——:Scanner类、匿名对象介绍、Random类、ArrayList集合、标准类格式、String类、static静态、Arrays工具类、Math类(1)
一.Scanner类 1.api简介: 应用程序编程接口 2.Scanner类: 作用:获取键盘输入的数据 位置: java.util.Scanner. 使用:使用成员方法nextInt() 和 ne ...
- Scanner类、匿名对象、Random类、ArrayList集合、String类、static静态类、math类和Arrays工具类
一.Scanner类 1.除了八种基本数据类型,其他都是引用类型: 引用类型使用三步骤: 2.Scanner类 引用jdk提供的类,Scanner在java.util包下,不在java.lang包(S ...
- 集合 ArrayList 类
集合的基本信息: System.Collections 系统类中的收藏类,定义各种对象(如列表,队列,位数组,哈希表和字典)的集合 常用的集合为ArrayList类:特殊集合一般会用到Queue队 ...
- Java中ArrayList类详解
1.什么是ArrayList ArrayList就是传说中的动态数组,用MSDN中的说法,就是Array的复杂版本,它提供了如下一些好处: 动态的增加和减少元素 实现了ICollection和ILis ...
- 实用的随机数生成类Random:测试(随机产生100个不重复的正整数)
实用的随机数生成类Random:测试(使用Random类随机生成100个不重复的正整数) 一.之前我们使用随机数用的是Math类的random()方法: tips: 产生随机数(0~9中任意整数)的方 ...
随机推荐
- 数据可视化之分析篇(四)PowerBI分析模型:产品关联度分析
https://zhuanlan.zhihu.com/p/64510355 逛超市的时候,面对货架上琳琅满目的商品,你会觉得这些商品的摆放,或者不同品类的货架分布是随机排列的吗,当然不是. 应该都听说 ...
- A Mountaineer 最详细的解题报告
题目来源:A Mountaineer (不知道该链接是否可以直接访问,所以将题目复制下来了) 题目如下: D - A Mountaineer Time limit : 2sec / Stack lim ...
- 老司机带你玩转面试(2):Redis 过期策略以及缓存雪崩、击穿、穿透
前文回顾 建议前一篇文章没看过的同学先看下前面的文章: 「老司机带你玩转面试(1):缓存中间件 Redis 基础知识以及数据持久化」 过期策略 Redis 的过期策略都有哪些? 在聊这个问题之前,一定 ...
- PdfSharp库剪裁Pdf页面边缘空白部分
背景 网上下载下来的Pdf格式电子书放到Kindle后由于页面太大,缩放后字常常小得看不清,因此可以通过剪裁页面边缘的空白以缩小页面,使Kindle上显示的字放大.在GitHub上星最多的C# Pdf ...
- 使用 JS 开发 Github Actions 实现自动部署前后台项目到自己服务器
不想看前面这么多废话的可以直接跳到具体实现 Github Actions 是什么? 说到 Github Actions 不得不提一下. 持续集成(continuous integration):高质量 ...
- linux管理防火墙
操作系统环境:CentOS Linux release 7.0.1406(Core) 64位CentOS 7.0默认使用的是firewall作为防火墙,这里改为iptables防火墙步骤. 1.关闭f ...
- Harbor打怪升级
目录 一.目标 二.V1.4升级至V1.6 三.V1.6升级至V1.9 四.V1.9升级至V2.0 五.写在最后 一.目标 Harbor V1.4版本升级至V2.0 注: Harbor升级需要注意的是 ...
- UVALive - 3644 X-Plosives (并查集)
A secret service developed a new kind of explosive that attain its volatile property only when a spe ...
- 汇总我在IDEA中使用Maven导包遇到的问题
看吐了吗?我是真吐了 真正遇到这些问题的朋友看到这,是不是有种找到知音的感觉,别怕,你不是在一个人战斗,苦逼的日子里,还有个我陪你一起苦逼,吐了吐了,这问题不知道耗费了我多久的时间,百度好多也解决不了 ...
- git的分支远程连接和远程分支的拉取推送及冲突处理
目录 备注: 知识点 Feature分支 多人协作 推送分支 远程分支推送建议 克隆(clone)远程仓库 分支的推送和冲突处理 关联本地分支和远程分支 推送时指定分支或设置分支跟踪 拉取分支时文件冲 ...