从零开始的Java笔记01

设置环境变量

  1. 右键我的电脑→属性→高级系统设置→在下侧的系统变量中新建:
    在这里插入图片描述
    变量值填自己的jdk路径就好。

  2. 双击打开Path变量,点击编辑文本,在最前方加入“ %JAVA_HOME%\bin; ”

(不过好像和老师讲得不一样……)

使用IDEA

若只新建com.day01.demo01, 在IDEA的工程列表里只会显示“一个包” (名为com.day01.demo01)
如果再新建com.day01.demo02 , com.day02.demo01 , com.day02.demo02, 工程列表会变成树状。
相当于自动合并了同前缀的package吧

生成最基本的HelloWorld

public class 类名称{
	public static void main(String[] args){	//这一行可以打psvm补全,也可以打main补全
		System.out.println("HelloWorld");		
		// 这是输出语句,在IDEA中通常写“sout”回车
		// 备注:println中的ln为line的缩写,代表输出完换行。
	}
}

命名规范

类名称与方法名称:大驼峰式:所有单词首字母大写,如Student, Demo01PrintMethod , MethodA
变量名:小驼峰式:第一个单词首字母小写,后面所有单词首字母大写,如index, sumOfNum

变量

  • 赋值后才能使用
  • 使用范围不能超过作用域(定义的一行开始,到所属大括号结束)
  • 可以一句赋值多个变量,但是不推荐。

数据转换

  • 自动转换:数据范围从小到大时,不需要特殊处理,编译器自动完成。
  • 强制转换:数据范围从大到小时,需要手动前缀 ( 范围小的类型 ) 变量名 , 如 (int) 100L

附上今天的俩作业:
1、从控制台接收张三本次期末考试语文、数学、英语的成绩,并计算出平均成绩。

import java.util.Scanner;
public class Demo01Homework {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入语文、数学、英语成绩:");
        double chinese = sc.nextInt();
        double math = sc.nextInt();
        double english = sc.nextInt();

        double avg = (math + chinese + english)/3;
        System.out.println("平均成绩为:"+avg);
    }
}

2、从控制台接收输入一个4个数的年份,判断是否为闰年,是闰年打印出true,不是闰年打印出false.

import java.util.Scanner;
public class Demo02Homework {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入年份判断,输入0结束:");
		// 通过死循环实现多次判断,不过应该有更好写法吧
        while (true) {	
            int year = sc.nextInt();
            if(year == 0){
                return;
            }
            else{
                System.out.println(judge(year));
            }
        }
    }
	// 定义了一个判断闰年的方法,返回值为布尔型
    public static boolean judge(int year){	
        if ((year % 4 == 0)&&(year % 100 != 0) || (year % 400 == 0)){
            return true;
        } else {
            return false;
        }
    }
}

效果如图
效果如图
还有个扩展题,因为学的东西实在是太少了,所以很暴力地用大量方法的调用与返回堆起来了这个菜单页面,通过ArrayList集合与用户类实现了用户信息的添加、修改与查询,以及每个页面都有索引限制。

效果图
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
主方法

// 我行我素购物管理系统
public class Demo01Homework {
    public static void main(String[] args) {
        Menu.menuLogin();
    }

}

Menu类

import java.util.ArrayList;
import java.util.Scanner;

public class Menu {
    public static Scanner sc = new Scanner(System.in);
    static ArrayList<Member> list = new ArrayList<>();

    static {	//初始化赋值

        Member one = new Member("张三", "123");
        Member two = new Member("李四", "1234");
        Member three = new Member("王五", "12345");
        list.add(one);
        list.add(two);
        list.add(three);

    }

    // 登录菜单
    public static void menuLogin() {

        while (true) {
            System.out.println();
            System.out.println("====我行我素购物管理系统====");
            System.out.println("1:登录");
            System.out.println("2:退出");

            System.out.print("输入序号:");
            int index = sc.nextInt();
            switch (index) {
                case 1: //输入1时登录
                    System.out.print("输入用户名:");
                    String username = sc.next();

                    System.out.print("输入密码:");
                    String password = sc.next();

                    if (login(username, password)) {
                        menuMain();
                    } else {
                        System.out.println("用户名或密码错误!");
                    }
                    break;
                case 2:
                    System.out.println("再见!");
                    return;
                default:
                    System.out.println("输入错误,重试:");
                    break;
            }
        }
    }

    public static boolean login(String username, String password) {
        return "admin".equals(username) && ("123456".equals(password));
    }

    public static void menuMain() {

        while (true) {
            System.out.println();
            System.out.println("====主菜单====");
            System.out.println("0: 返回上一级");
            System.out.println("1:客户信息管理");
            System.out.println("2:购物结算");
            System.out.println("3:真情回馈");
            System.out.println("4:注销");

            System.out.print("输入序号:");
            int i = sc.nextInt();
            switch (i) {
                case 0:
                case 4:
                    return;
                case 1:
                    menuInfo();
                    break;
                case 2:
                    purchase();
                    break;
                case 3:
                    menuFeedback();
                    break;
                default:
                    System.out.println("输入错误,重试:");
                    break;
            }
        }
    }

    // 客户信息管理菜单
    public static void menuInfo() {

        while (true) {
            System.out.println();
            System.out.println("=======客户信息========");
            System.out.println("0: 返回上一级");
            System.out.println("1:显示所有客户信息");
            System.out.println("2:添加客户信息");
            System.out.println("3:修改客户信息");
            System.out.println("4:查询客户信息");


            System.out.print("输入序号:");
            int i = sc.nextInt();
            switch (i) {
                case 0:
                    return;
                case 1:
                    showAllMembers();
                    break;
                case 2:
                    addMembers();
                    break;
                case 3:
                    modifyMembers();
                    break;
                case 4:
                    showMembers();
                    break;
                default:
                    System.out.println("输入错误,重试:");
                    break;
            }
        }
    }

    // 回馈菜单
    public static void menuFeedback() {
        while (true) {
            System.out.println();
            System.out.println("====真情回馈====");
            System.out.println("0: 返回上一级");
            System.out.println("1:幸运大放送");
            System.out.println("2:幸运轮盘");
            System.out.println("3:生日问候");
            System.out.print("输入序号:");
            int i = sc.nextInt();
            switch (i) {
                case 0:
                    return;
                case 1:
                    daFangSong();
                    break;
                case 2:
                    daZhuanPan();
                    break;
                case 3:
                    birthday();
                    break;
                default:
                    System.out.println("输入错误,请重输:");
                    break;
            }
        }
    }

    // 展示所有客户信息
    private static void showAllMembers() {
        System.out.println();
        System.out.println("====展示所有客户信息====");
        int size = list.size();
        for (int i = 0; i < size; i++) {
            System.out.print("编号:" + (i + 1) + ", ");
            list.get(i).show();
        }
    }

    // 增加客户信息
    private static void addMembers() {
        System.out.println();
        System.out.println("====增加客户信息====");
        System.out.print("输入用户姓名:");
        String name = sc.next();
        System.out.print("输入用户密码:");
        String password = sc.next();

        Member temp = new Member(name, password);
        list.add(temp);
        System.out.println("添加完成!");

    }

    // 修改客户信息
    private static void modifyMembers() {
        System.out.println();
        System.out.println("====修改客户信息====");

        while (true) {
            System.out.print("输入客户编号:");
            int i = sc.nextInt();
            if (i < 0 || i >= list.size()) {
                System.out.println("超出编号范围!");
                continue;
            }
            list.get(i - 1).show();
            System.out.print("输入修改后的姓名:");
            String name = sc.next();
            System.out.print("输入修改后的密码:");
            String password = sc.next();
            list.get(i - 1).setName(name);
            list.get(i - 1).setPassword(password);

            System.out.println("修改成功!");
            return;
        }

    }

    // 展示客户信息
    private static void showMembers() {
        System.out.println();
        System.out.println("====查询客户信息====");
        while (true) {
            System.out.print("输入客户编号:");
            int i = sc.nextInt();
            if (i < 0 || i >= list.size()) {
                System.out.println("超出编号范围!");
                continue;
            }
            list.get(i - 1).show();
            return;
        }
    }

    // 购物结算
    private static void purchase() {

        while (true) {
            System.out.println("====结算====");
            System.out.print("请输入结算金额,输入0返回上一级:");
            double money = sc.nextDouble();
            if (money == 0) return;
            if (money < 0) {
                System.out.println("输入有误,请重新输入:");
                continue;
            }


            System.out.println("是否参加换购活动?");
            System.out.println("0.不换购");
            System.out.println("1.满50元,加2元换购可乐一瓶");
            System.out.println("2.满100元,加3元换购500mL可乐一瓶");
            System.out.println("3.满100元,加10元换购5公斤面粉");
            System.out.println("4.满200元,加50元换购天猫精灵");

            while (true) {
                System.out.print("输入序号:");
                int i = sc.nextInt();

                switch (i) {
                    case 0:
                        System.out.println("本次消费总金额:" + money);
                        return;
                    case 1:

                        money += 2;
                        System.out.println("换购成功!");
                        System.out.println("本次消费总金额:" + money);
                        return;
                    case 2:
                        money += 3;
                        System.out.println("换购成功!");
                        System.out.println("本次消费总金额:" + money);
                        return;
                    case 3:
                        money += 10;
                        System.out.println("换购成功!");
                        System.out.println("本次消费总金额:" + money);
                        return;
                    case 4:
                        money += 50;
                        System.out.println("换购成功!");
                        System.out.println("本次消费总金额:" + money);
                        return;
                    default:
                        System.out.println("输入有误,请重新输入!");
                        break;
                }

            }
        }

    }

    // 幸运大放送
    private static void daFangSong() {
        System.out.println("====大放送====");

    }

    // 大转盘
    private static void daZhuanPan() {
        System.out.println("====大转盘====");
    }

    // 生日祝福
    private static void birthday() {
        System.out.println("====黄旭东祝您寿比南山!====");
    }

}


Member类

public class Member {
    private String name;
    private String password;

    public void show(){
        System.out.println("姓名:"+ name +", 密码:" + password);
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }

    public Member(String name, String password) {
        this.name = name;
        this.password = password;
    }

    public Member() {
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值