一个可以解析基本类型和字符串的简单文本扫描器。 例如,以下代码使用户能够从 System.in 中读取一个数:
Scanner in=new Scanner(System.in);
int i = in.nextInt();
导包
使用import关键字导包,在类的所有代码之前导包,引入要使用的类型,java.lang包下的所有类无需导入。
格式:import 包名.类名;
创建对象
调用该类的成员方法,完成指定功能。
格式:变量名.方法名();
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);
}
}
//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);
}
}
}
java.util.ArrayList 是大小可变的数组的实现,存储在内的数据称为元素。此类提供一些方法来操作内部存储的元素。 ArrayList 中可不断添加元素,其大小也自动增长。
java.util.ArrayList < E > :该类需要 import导入使后使用。
< E > ,表示一种指定的数据类型,叫做泛型。 E ,取自Element(元素)的首字母。在出现 E 的地方,使用一种引用数据类型将其替换即可,表示我们将存储哪种引用类型的元素。代码如下:
ArrayList
public ArrayList() :构造一个内容为空的集合。
基本格式:ArrayList
在JDK 7后,右侧泛型的尖括号之内可以留空,但是<>仍然要写。简化格式:
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());
}
}
}