Java基础语法
在java中,我们将现实世界中的事物抽象成代码,一个事物可以对应于java中的一个类,这个类具有属性和方法(功能),就像一件物体具有特征和行为;
-
引用数据类型(类)
- 类的类型为两种:
- 第一种,Java为我们提供好的类,如Scanner类,Scanner类等,这些已存在的类中包含了很多的方法与属性,可供我们使用。
- 第二种,我们自己创建的类,按照类的定义标准,可以在类中包含多个方法与属性,来供我们使用。
- 创建类的格式
- 类的类型为两种:
public class Phone {
//属性
String brand;// 品牌型号
String color;// 颜色
double size; // 尺寸大小
//功能
public static void function(){
//方法体
}
}
-
- 使用类的格式:
类名 变量名 = new 类名();
-
- 使用类中的属性与方法格式
public class testPhone {
public static void main(String[] args){
phone p = new phone();//新建自定义类
p.brand = "honor";//设置属性值
p.color = "blue";
p.size = 5.5;
System.out.println(p);
System.out.println(p.brand+" "+p.color+" "+p.size);
}
}
上述代码中,通过类Phone创建出来的变量p,它相当于我们生活中的盒子,里面包含了它能够使用的属性。
- 通过 p.属性名 就可以对属性进行操作
- 与引用类型数组类似,引用类型的自定义类型的变量,直接变量时,结果为对象地址值,这里可以通过内存图简单解释。
-
ArrayList集合
ArrayList集合是程序中最常见的一种集合,它属于引用数据类型(类)。在ArrayList内部封装了一个长度可变的数组,当存入的元素超过数组长度时,ArrayList会在内存中分配一个更大的数组来存储这些元素,因此可以将ArrayList集合看作一个长度可变的数组。
-
- 它属于引用数据类型(类)。我们可以看作一个长度可变的数组。
- 创建集合的方
ArrayList<要存储元素的数据类型> 变量名 = new ArrayList<要存储元素的数据类型>();
- 集合中存储的元素,只能为<>括号中指定的数据类型元素;
- “<要存储元素的数据类型>”中的数据类型必须是引用数据类型,不能是基本数据类型;
下面给出8种基本数据类型所对应的引用数据类型表示形式:
基本数据类型 | 对应的引用数据类型表示形式 |
byte | Byte |
short | Short |
Int | Integer |
long | Long |
float | Float |
double | Double |
char | Character |
boolean | Boolean |
-
- 集合中的常用方法
boolean add(Object obj)//在列表末尾添加元素
Object get(int index)//获取元素
int size()//获取长度
boolean add(int index, Object obj)//在index处添加元素,其他元素后移
Object set(int index, Object obj)//替换原来index位置上的元素
Object remve(int index)//清除index位置上的元素
void clear()//清除列表
-
库存管理案例
需求分析:
管理员具有查看,修改和退出三个功能,因此需要封装三个方法分别具有该功能
------------库存管理--------------
1.查看库存
2.修改库存数量
3.退出
请输入要执行的序号
手机具有品牌、尺寸、价格等属性,需要定义一个数据类,下面即为该类
public class Goods {
String brand; //属性
double price;
int count;
public static void function(){
//功能
}
}
函数由main方法进入,选择要执行的功能--->switch函数选择要执行的操作--->执行方法体
- 添加库存商品
public static void addGoods(ArrayList<Goods> list){
Goods g1 = new Goods();
Goods g2 = new Goods();
Goods g3 = new Goods();
g1.brand = "lenovo";
g2.brand = "samsung";
g3.brand = "apple";
g1.count = 0;
g2.count = 0;
g3.count = 0;
g1.price = 5555.12;
g2.price = 4532.54;
g3.price = 9876.21;
list.add(g1);
list.add(g2);
list.add(g3);
}
- 选择功能
public static int chooseFunction(){
System.out.println("请输入您要选择的功能:");
System.out.println("1.查看库存清单");
System.out.println("2.修改商品库存数量");
System.out.println("3.退出");
int i = new Scanner(System.in).nextInt();
return i;
}
- 打印库存记录
import java.util.*;
public static void printStore(ArrayList<Goods> list){ //1。查看库存
System.out.println("------------查看库存记录-------------");
System.out.println("品牌"+" "+"库存"+" "+"价格");
for(int i = 0;i < list.size();i++){
Goods g = list.get(i);
System.out.println(g.brand+" "+g.count+" "+g.price);
}
System.out.println("---------------------------------");
}
- 修改库存数
public static void update(ArrayList<Goods> list){ //2。修改库存
System.out.println("------------修改库存数量-------------");
for(int i = 0;i < list.size();i++){
Goods item = list.get(i);
System.out.println("请输入"+item.brand+"的库存数");
item.count = new Scanner(System.in).nextInt();
list.set(i,item);
}
System.out.println("--------------完成修改---------------");
}
public static void exit(){ //3.退出
System.out.println("------------------退出---------------");
System.out.println("您已退出系统");
}
- 退出
public static void exit(){ //3.退出
System.out.println("------------------退出---------------");
System.out.println("您已退出系统");
}
- 主函数调用
public static void main(String[] args){
ArrayList<Goods> goods = new ArrayList<Goods>();
addGoods(goods);
while(true){
int i = chooseFunction();
switch(i){
case 1: //1.查看库存清单
printStore(goods);
break;
case 2: //2.修改商品库存数量
update(goods);
break;
case 3: //3.退出
exit();
return;
default:
System.out.println("---------------------------------");
System.out.println("您选择的功能有误,请重新选择");
}
}
}
商品数据用ArrayList存储,数据类型为自定义类型,具有三个属性(brand、count、price)