Java练习5

1、

练习题 : 分别通过for循环/While循环/do-While循环写一个死循环

package com.ithema_01;

/*
练习题 : 分别通过for循环/While循环/do-While循环写一个死循环
 */

import java.util.Scanner;

public class StudentText {
    public static void main(String[] args) {
          //for循环
//        for (int i=2;i>1;i++){
//            System.out.println(i);
//        }

        //While循环
//        int j=1;
//        while (j>0){
//            System.out.println("hello");
//            j++;
//        }

        //do-While循环
        int k=1;
        do {
            System.out.println("world");
            k++;
        }while (k>1);
    }
}

2、

练习题 : 鸡兔同笼问题(穷举法)
已知:鸡兔共35只,共94只脚,那么鸡和兔各几只?

package com.ithema_01;

/*
练习题 : 鸡兔同笼问题(穷举法)
已知:鸡兔共35只,共94只脚,那么鸡和兔各几只?
 */
/*
鸡chicken      兔 rabbit      35
一头 head      一头
两脚 foot      四脚            94
 */

import java.util.Random;

public class StudentText {
    public static void main(String[] args) {

        Random r=new Random();

        while (true) {
            int chicken = r.nextInt(35);
            int rabbit = r.nextInt(35);//设置死循环,不断随机生成

            if (chicken + rabbit == 35) {
                if (chicken * 2 + rabbit * 4 == 94) {
                    System.out.println("鸡的数量" + chicken);
                    System.out.println("兔的数量" + rabbit);
                    break;//结束循环
                }
            }
        }
    }
}

3、

商品录入系统
通过java基础的相关知识,设计并完成一个简单的商品录入系统,可以实现:
菜单显示、商品信息展示、商品信息录入、商品信息查询、退出的功能

package com.ithema_01;

/*
商品录入系统
通过java基础的相关知识,设计并完成一个简单的商品录入系统,可以实现:
菜单显示、商品信息展示、商品信息录入、商品信息查询、退出的功能
 */
/*
1、菜单
1.1、创建商品类  商品名称、价格、用途
2、菜单显示
3、商品信息展示
4、商品信息录入
5、商品信息查询
6、退出
 */


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

public class CommoditySystem {
    public static void main(String[] args) {

        //创建集合对象,用于储存商品数据
        ArrayList<Commodity> array=new ArrayList<Commodity>();

        //用循环完成再次回到主界面
        while (true){
            //用输出语句完成主界面的编写
            System.out.println("--------欢迎来到商品管理系统--------");
            System.out.println("1 录入一个商品信息");
            System.out.println("2 查询一个商品信息");
            System.out.println("3 查看所有商品信息");
            System.out.println("4 退出系统");
            System.out.println("请输入你的选择:");

            //用scanner实现键盘录入数据
            Scanner sc=new Scanner(System.in);
            String line= sc.nextLine();

            //用switch语句完成操作的选择
            switch (line){
                case "1":
                    addCommodity(array);
                    break;
                case "2":
                    queryCommodity(array);
                    break;
                case "3":
                    exhibitionCommodity(array);
                    break;
                case "4":
                    System.out.println("谢谢使用");
                    System.exit(0);//JVM退出
            }
        }
    }

    //定义一个方法,用于录入一个商品信息
    public static void addCommodity(ArrayList<Commodity> arrgy){
        //键盘录入商品对象所需要的数据,显示提示信息,提示要输入何种信息
        Scanner sc=new Scanner(System.in);

        //为了让side在while循环外面被访问到,我们就把它定义在了循环外
        String side;

        //为了让程序能够回到这里,我们使用循环实现


        System.out.println("请输入商品名称");
        String name=sc.nextLine();
        System.out.println("请输入商品价格");
        String price=sc.nextLine();
        System.out.println("请输入商品用途");
        String purpose=sc.nextLine();

        //创建商品对象,把键盘录入的数据赋值给学生对象的成员变量
        Commodity c=new Commodity();
        c.setName(name);
        c.setPrice(price);
        c.setPurpose(purpose);

        //将学生对象添加到集合中
        arrgy.add(c);

        //给出添加成功提示
        System.out.println("添加商品成功");
    }

    //定义一个方法,用于查询一个商品信息
    public static void queryCommodity(ArrayList<Commodity> array){
        //键盘录入要查询的商品名称,显示提示信息
        Scanner sc=new Scanner(System.in);

        System.out.println("请输入你要查询的商品的名称:");
        String name= sc.nextLine();

        //对商品存在进行判断
        //如果不存在,显示提示信息
        //如果存在,执行操作
        int index=-1;
        for (int i=0;i< array.size();i++){
            Commodity c=array.get(i);
            if (c.getName().equals(name)){
                //int index=i;
                index=i;
                break;
            }
        }
        if (index==-1){
            System.out.println("该信息不存在,请重新输入");
        }else {
            for (int i=0;i< array.size();i++){
                Commodity c=array.get(i);
                if (Objects.equals(c.getName(), name)) {
                    System.out.println(c.getName() + "\t" + c.getPrice() + "元\t" + c.getPurpose());
                }
            }
        }
    }

    //定义一个方法,用于查看所有商品信息
    public static void exhibitionCommodity(ArrayList<Commodity> array){
        //判断集合中是否有数据,如果没有,显示提示信息
        if (array.size()==0){
            System.out.println("无信息,请先添加信息在查询");
            //为了让程序不再往下执行,输出return;
            return;
        }

        //显示表头信息
        // \t tab键的位置
        System.out.println("名称\t价格\t\t用途");
        //将集合中数据取出按照对应格式显示商品信息
        for (int i=0;i< array.size();i++){
            Commodity c=array.get(i);
            System.out.println(c.getName()+"\t"+c.getPrice()+"元\t"+c.getPurpose());
        }
    }

}
package com.ithema_01;

public  class Commodity {
    //名称name
    private String name;
    //价格price
    private String price;
    //用途purpose
    private String purpose;

    public Commodity() {
    }

    public Commodity(String name, String price, String purpose) {
        this.name = name;
        this.price = price;
        this.purpose = purpose;
    }

    public String getName() {
        return name;
    }

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

    public String getPrice() {
        return price;
    }

    public void setPrice(String price) {
        this.price = price;
    }

    public String getPurpose() {
        return purpose;
    }

    public void setPurpose(String purpose) {
        this.purpose = purpose;
    }
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值