目录
2️⃣String创建对象两种方式的区别:“字符串常量池” 和“new方式”
一、API初认识
1、API
重点学习java.base下面的包
2、包
学习API要先学习包
1️⃣什么是包和注意事项
2️⃣IDEA自动导包设置
二、String
1、String概述,常用方法介绍
1️⃣String创建对象封装字符串数据的方式
2️⃣String的常用方法
2、String使用时的注意事项
1️⃣String对象不可变
对实际开发影响不大,但是笔试题有用
2️⃣String创建对象两种方式的区别:“字符串常量池” 和“new方式”
具体看上面第一张图
3️⃣案例
3、String的应用案例1-用户登录
4、String的应用案例2-验证码
上一个生成随机验证码的案例是在 06编程案例
三、ArrayList
1、集合概述
集合的特点:
ArrayList最常用
2、ArrayList概述
泛型类
ArrayList的特点:集合特点+元素可以重复,元素存在索引
3、ArrayList常用方法
这里打印list输出的不是对象的地址,而是列表,说明ArrayList把Object类中的toString()方法重写了 ,java11
集合都是支持泛型的↑ 另外集合和泛型都不支持基本数据类型,之后讲。
4、ArrayList应用案例
1️⃣方法一:删除后加个i--
2️⃣方法二:倒着遍历
5、 ArrayList综合案例
package com.itheima.api;
public class Test {
//1、设计一个菜品类Food,负责创建菜品对象,封装菜品数据
//2、设计一个菜品操作类FoodOperate,负责菜品业务实现:菜品上架、浏览
//3、测试系统
public static void main(String[] args) {
FoodOperate command = new FoodOperate();
command.start();
}
}
package com.itheima.api;
public class Food {
private String name;
private double price;
private String desc;
public Food() {
}
public Food(String name, double price, String desc) {
this.name = name;
this.price = price;
this.desc = desc;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public double getPrice() {
return price;
}
public void setPrice(double price) {
this.price = price;
}
public String getDesc() {
return desc;
}
public void setDesc(String desc) {
this.desc = desc;
}
}
package com.itheima.api;
import com.sun.source.tree.NewArrayTree;
import java.util.ArrayList;
import java.util.Scanner;
public class FoodOperate {
//1、定义一个ArrayList集合对象,负责存储菜品对象信息
private ArrayList<Food> FoodList = new ArrayList<>();
//2、开发功能:上架菜品
public void addFood(){
Scanner sc = new Scanner(System.in);
Food f = new Food();
System.out.println("请输入菜品名称:");
String name = sc.next();
f.setName(name);
System.out.println("请输入菜品价格:");
double price = sc.nextDouble();
f.setPrice(price);
System.out.println("请输入菜品描述:");
String desc = sc.next();
f.setDesc(desc);
FoodList.add(f);
System.out.println("上架成功!!");
}
//3、开发功能:浏览菜品
public void showAllFoods(){
if(FoodList.size() == 0){
System.out.println("什么菜品都没有噢,先去上架吧");
return;
}
for (int i = 0; i < FoodList.size(); i++) {
Food food = FoodList.get(i);
System.out.println(food.getName());
System.out.println(food.getPrice());
System.out.println(food.getDesc());
System.out.println("------------------");
}
System.out.println("全部商品已展示完毕");
}
//展示页面
public void start(){
while (true) {
System.out.println("本页面包含两个功能:1、上架菜品;2、展示菜品;3、退出");
System.out.println("请输入相应序号:");
Scanner sc = new Scanner(System.in);
String command = sc.next();
switch(command){
case "1":
addFood();
break;
case "2":
showAllFoods();
break;
case "3":
System.out.println("下次再来噢");
return;
default:
System.out.println("您输入的序号有误!!");
}
}
}
}