内存分布:
栈:运行的方法
堆:new的内容保存在堆中
方法区:保存类的信息。
封装步骤:
1、将成员变量用private修饰。
2、对私有变量提供getXxx/setXxx方法(快速生成方法的快捷键)
Scanner
一个可以解析基本类型和字符串的简单文本扫描器。
例子:
package hm01_scanner;
import java.util.Scanner;
public class Demo2 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入一个整数");
int i=sc.nextInt();
System.out.println(i);
}
}
Random
生成伪随机数。
package hm01_scanner;
import java.util.Random;
import java.util.Scanner;
public class Demo3 {
public static void main(String[] args) {
Random random = new Random();
int i=random.nextInt(100)+1;//生成1-100的随机数
Scanner scanner = new Scanner(System.in);
System.out.println("猜数游戏!!!");
while(true){
int guessNumber = scanner.nextInt();
if (i<guessNumber)
System.out.println("猜大了!");
else if (i>guessNumber)
System.out.println("猜小了!");
else {
System.out.println("猜对了!");
break;
}
}
}
}
匿名对象
只使用一次,较为方便。做为参数或者返回值
int i1 = new Random().nextInt();
ArrayList
大小
可变的数组
的实现,存储在内的对象称为元素。
ArrayList arrayList = new ArrayList();//可以添加任何类型的元素到list当中
ArrayList <E>
: <E> ,表示一种指定的数据类型,叫做泛型。 E ,取自
Element
(元素)的首字母。在出现
E
的地方,我 们使用一种引用数据类型将其替换即可,表示我们将存储哪种引用类型的元素。
常用方法:
boolean add(E e)
:将指定的元素添加到此列表的尾部。
E remove(int index)
:移除此列表中指定位置上的元素。返回被删除的元素。
E get(int index)
:返回此列表中指定位置上的元素。返回获取的元素。
int size()
:返回此列表中的元素数。遍历集合时,可以控制索引范围,防止越界。
package hm02_arrayList;
import java.util.ArrayList;
public class Demo2 {
public static void main(String[] args) {
// ArrayList arrayList = new ArrayList();
ArrayList<String> list = new ArrayList<String>();
ArrayList<Student> list2 = new ArrayList<Student>();
// //简化写法
ArrayList<Student> list1 = new ArrayList<>();
// 默认Object类型 也表示可以添加任何类型
ArrayList<Object> objects = new ArrayList<>();
list.add("aaa");
// System.out.println(list);//直接显示元素内容
list.add("bbb");
// System.out.println(list);
list.add("ccc");
list.add("ddd");
System.out.println(list);
list.remove(0);//后面元素自动向前移动一位
System.out.println(list);
String s=list.get(2);
System.out.println(s);
}
}