Java递减数组中的整数

时间:2014-04-03 06:34:23

标签: java arrays

您好我正在尝试为视频商店制作一个程序。当用户雇用视频时,我希望在租用时从inStock feild获得array-1。如何在array中搜索用户输入的videoID并从instock feild中删除1

// this is my arraylist (Sting videoID, String Title, double Price, int inStock)
videos[0]=new Video("140","The Matrix   ", 7.50,        3);          
videos[1]=new Video("141", "Terminator 2    ", 5.00,        3);
videos[2]=new Video("142", "Shrek       ", 5.00,        10);

3 个答案:

答案 0 :(得分:2)

List<Video> videoList = new ArrayList<Video>();

        Video v = new Video();
        v.setVideoId("140");
        v.setPrice(7.50);
        v.setTitle("The Matrix");
        v.setInStock(3);

        videoList.add(v);

        Video v2 = new Video();
        v2.setVideoId("141");
        v2.setPrice(5.00);
        v2.setTitle("The Matrix");
        v2.setInStock(3);

        videoList.add(v2);

        Video v3 = new Video();
        v3.setVideoId("142");
        v3.setPrice(5.00);
        v3.setTitle("Shrek");
        v3.setInStock(10);

        videoList.add(v3);
        String hire = "141";
        int quantity  = 2;
        for(Video video : videoList){
            if(video.getVideoId().equals(hire)){
                if(video.getInStock()>0)
                video.setInStock(video.getInStock() - quantity);
            }
        }

答案 1 :(得分:0)

也许您应该在Video类中添加一个新方法来更新当前的库存。

然后使用;

videos[<a-value>].updateStock();

或者您可以简单地使用setter来更改值。

videos[<a-value>].setStock(<another-value>);

但是,您的模型似乎太简单而且不太相关。 您应该创建另一个类来表示“关联表”。 然后,您可以录制租金(user_id,video_id,rent_nb,日期)。

您将能够跟踪用户,查看租借日期,号码等。

美好的一天!

答案 2 :(得分:0)

使用Array是一个坏主意。

ArrayList的{​​{1}}。

ArrayList

现在将您的视频添加到ArrayList ArrayList<ArrayList> videos = new ArrayList<ArrayList>();

例如: -

videos

现在将此ArrayList<String> video = new ArrayList<String>(); video.add("140"); video.add("Shrek"); video.add("5"); video.add(10); 添加到video

videos

要删除视频,请执行此操作;

videos.add(video);