Java编程作业

1、编程题

设计一个用户类User,类中的变量有用户名、密码和记录用户数量的变量,定义3个构造方法:无参的、为用户名赋值的、为用户名和密码赋值的,还有获取和设置密码的方法和返回类信息的方法。

package com.sdbi.suhang;

public class User {
    // 编程题:设计一个用户类User,类中的变量有用户名、密码和记录用户数量的变量,
    // 定义3个构造方法:无参的、为用户名赋值的、为用户名和密码赋值的,还有获取和设置密码的方法和返回类信息的方法。
    private String Username;
    // 定义一个私有化的字符串类型的对象Username(用户名)。

    private String password;
    // 定义一个私有化字符串类型的对象password(密码)。

    private static int num = 0;
    // 定义一个私有化静态的int类型的对象num,并且赋初始值为零。

    {// 定义构造一个代码块。用来统计用户创建对象的数量
        // 因为构造代码块是在创建对象的时候被调用,构造代码块在构造方法之前调用,也就是只要有对象实例化就可以执行。
        num++;
        System.out.println("第" + num + "对象");

    }

    public User() {
        // 无参的方法。

    }

    public User(String Username) {
        // 为用户名赋值的方法。
        this.Username = Username;
    }

    public User(String Username, String password) {
        // 为用户名和密码赋值的方法。
        this.Username = Username;
        this.password = password;

    }

    public String getkey(String password) {
        // 获取密码的方法。
        return password;
        // System.out.println(password);

    }

    public void setkey(String password) {
        // 设置密码的方法。
        this.password = password;

    }

    public String calss() {
        // 返回类信息的方法。
        return "类信息为:" + this.Username + "\n" + this.password;

    }

    public void say() {//打印信息的方法
        System.out.println("用户名为:" + Username +"\n"+ "用户密码为:" + password);

    }

}
package com.sdbi.suhang;

public class UserData {
    public static void main(String[] args) {
        User u1 = new User();
        u1.say();// 调用不带有任何参数的无参数方法。

        User u2 = new User("张三");
        u2.say();// 调用带有用户名的方法。

        User u3 = new User("哈哈哈", "123456");
        u3.say();// 调用带有用户名和密码的方法。

    }

}

Java编程作业

2、编程题

设计一副牌Poker的外部类和一张牌Card的内部类。

(1)Poker类中定义私有成员花色数组、点数数组以及一副牌的数组属性,提供构造方法(创建并初始化一副牌的数组)、随机洗牌方法shuffle(Math.random()获取[0,1)的随机数;获取[n,m)的随机数公式为Math.random()*(m-n)+n)和发牌方法deal。

(2)Card类中定义花色和点数属性,提供打印信息方法。

(3)定义测试类并在main()方法中创建一副牌Poker对象,并调用shufle()进行洗牌,调用deal()进行发牌。

Java编程作业
package com.sdbi.suhang;

import java.util.Arrays;
import java.util.Iterator;

import javax.sql.rowset.CachedRowSet;

public class Poker {
//  设计一副牌Poker的外部类和一张牌Card的内部类。
// (1)Poker类中定义私有成员花色数组、点数数组以及一副牌的数组属性,提供构造方法(创建并初始化一副牌的数组),
//  随机洗牌方法shuffle(Math.random()获取[0,1)的随机数;
//  获取[n,m)的随机数公式为Math.random()*(m-n)+n)和发牌方法deal。
// (2)Card类中定义花色和点数属性,提供打印信息方法。
// (3)定义测试类并在main()方法中创建一副牌Poker对象,并调用shufle()进行洗牌,调用deal()进行发牌。

    public class Card {
        // 定义一个新的Card类。(内部类)

        private String Suite;// 定义一个私有化的字符串类型的花色变量。

        private String Face;// 定义一个私有化的字符串类型的点数变量。

        public Card(String Suite, String Face) {
            // 定义一个公共的含有参数的Card方法。
            this.Suite = Suite;
            this.Face = Face;

        }

        public String toString() {
            // 定义一个可以返回扑克牌花色和点数的方法。
            return Suite + Face;
            // 之后我们会用到这个方法用来进行发牌。

        }

    }

    private static String[] Suites = { "♠", "♦", "♣", "♥" };// 定义一个私有化的花色的字符串数组

    private static String[] facesa = { "" };// 定义一个私有化的空花色的字符串数组

    private static String[] Suitess = { "🃏", "🃏" };// 定义一个新数组用来存储大小王

    private static String[] Faces = { "2", "3", "4", "5", "6", "7", "8", "9", "10", "J", "Q", "K", "A" };// 定义一个私有化的牌面的字符串数组

    public static Card[] Cards;
    // 定义一个公共的Card数组,名称叫Cards。

    public void poker() {
        // 定义一个扑克牌的构造方法。
        Cards = new Card[54];// 创建一个Cards数组,并且规定Cards数组的长度为52.

        for (int i = 0; i < Suites.length; i++) {
            // &#x5B9A;&#x4E49;&#x4E00;&#x4E2A;&#x5916;&#x90E8;for&#x5FAA;&#x73AF;&#xFF0C;&#x7528;&#x6765;&#x6392;&#x5217;&#x6251;&#x514B;&#x724C;&#x7684;&#x82B1;&#x8272;&#x3002;
            for (int j = 0; j < Faces.length; j++) {
                // &#x5B9A;&#x4E49;&#x4E00;&#x4E2A;&#x5185;&#x90E8;for&#x5FAA;&#x73AF;&#xFF0C;&#x7528;&#x6765;&#x6392;&#x5217;&#x6251;&#x514B;&#x724C;&#x7684;&#x724C;&#x9762;&#x70B9;&#x6570;&#x3002;

                // &#x5B9A;&#x4E49;&#x4E00;&#x4E2A;&#x65B0;&#x7684;&#x53D8;&#x91CF;&#xFF0C;&#x7528;&#x6765;&#x8868;&#x793A;&#x5361;&#x724C;&#x7684;&#x5E8F;&#x6570;&#x3002;
                Cards[i * 13 + j] = new Card(Suites[i], Faces[j]);
                // &#x8FD9;&#x91CC;&#x7684;&#x6253;&#x5370;&#x529F;&#x80FD;&#x662F;&#x7528;&#x6765;&#x68C0;&#x9A8C;&#x662F;&#x5426;&#x53EF;&#x4EE5;&#x521B;&#x5EFA;&#x51FA;&#x6240;&#x6709;&#x7684;&#x6251;&#x514B;&#x724C;

            }

        } // &#x65E2;&#x7136;&#x6240;&#x6709;&#x5E26;&#x82B1;&#x8272;&#x7684;&#x6251;&#x514B;&#x724C;&#x90FD;&#x5B9A;&#x4E49;&#x5B8C;&#x4E86;&#xFF0C;&#x90A3;&#x6211;&#x4EEC;&#x8BE5;&#x5B9A;&#x4E49;&#x5927;&#x5C0F;&#x738B;&#x4E86;&#x3002;
        Cards[52] = new Card(Suitess[0], facesa[0]);// &#x8FD9;&#x5C31;&#x662F;&#x6211;&#x4EEC;&#x5B9A;&#x4E49;&#x7684;&#x5927;&#x5C0F;&#x738B;&#xFF0C;&#x7531;&#x4E8E;&#x5927;&#x5C0F;&#x738B;&#x6CA1;&#x6709;&#x70B9;&#x6570;&#x533A;&#x522B;&#xFF0C;&#x6211;&#x4EEC;&#x5C31;&#x628A;&#x5B83;&#x4EEC;&#x5F52;&#x7C7B;&#x5230;&#x82B1;&#x8272;&#x91CC;&#x9762;
        Cards[53] = new Card(Suitess[1], facesa[0]);
        // &#x5230;&#x8FD9;&#x91CC;&#xFF0C;&#x6211;&#x4EEC;&#x5C31;&#x5B8C;&#x6574;&#x7684;&#x5B9A;&#x4E49;&#x5B8C;&#x4E86;&#x4E00;&#x526F;&#x6251;&#x514B;&#x724C;&#x4E86;&#x54E6;&#xFF01;&#xFF01;&#xFF01;
        // &#x5E76;&#x4E14;&#x6211;&#x4EEC;&#x5DF2;&#x5C06;&#x65B0;&#x7684;&#x4E00;&#x526F;&#x62CD;&#x88C5;&#x5230;&#x4E86;&#x539F;&#x5148;&#x5B9A;&#x4E49;&#x597D;&#x7684;Cards&#x6570;&#x5217;&#x91CC;&#x9762;&#x54E6;&#xFF01;

    }

    public void say() {
        for (int i = 0; i < 54; i++) {
            System.out.print(Cards[i]);

        }
        System.out.println();
    }

    public void shuffle() {// &#x6211;&#x4EEC;&#x8FD9;&#x91CC;&#x5C31;&#x5F00;&#x59CB;&#x521B;&#x5EFA;&#x4E00;&#x4E2A;&#x6D17;&#x724C;&#x7684;&#x65B9;&#x6CD5;
        int q = Cards.length;// &#x9996;&#x5148;&#x6211;&#x4EEC;&#x521B;&#x5EFA;&#x4E00;&#x4E2A;int&#x5E38;&#x91CF;q&#xFF0C;&#x6765;&#x8BB0;&#x5F55;&#x6211;&#x4EEC;&#x9700;&#x8981;&#x5FAA;&#x73AF;&#x7684;&#x6B21;&#x6570;&#x3002;
        for (int i = 0; i < q; i++) {// &#x4E4B;&#x540E;&#x6211;&#x4EEC;&#x521B;&#x5EFA;&#x4E00;&#x4E2A;for&#x5FAA;&#x73AF;&#xFF0C;&#x7528;&#x6765;&#x5C06;&#x6BCF;&#x4E00;&#x4E2A;&#x5143;&#x7D20;&#x8FDB;&#x884C;&#x968F;&#x673A;
            int num = (int) (Math.random() * q);
            // Math.random()&#x7684;&#x65B9;&#x6CD5;&#x5C31;&#x662F;&#x7528;java&#x865A;&#x62DF;&#x673A;&#x968F;&#x673A;&#x521B;&#x5EFA;&#x4E00;&#x4E2A;&#x4ECB;&#x4E8E;0.0&#x548C;1.0&#x4E4B;&#x95F4;&#x7684;double&#x7C7B;&#x578B;&#x7684;&#x4F2A;&#x968F;&#x673A;&#x6570;&#x3002;
            // &#x6211;&#x4EEC;&#x7528;&#x8FD9;&#x4E2A;&#x4F2A;&#x968F;&#x673A;&#x6570;&#x4E58;&#x4EE5;&#x6211;&#x4EEC;&#x6570;&#x5217;&#x7684;&#x957F;&#x5EA6;&#xFF0C;&#x8FD9;&#x6837;&#x5C31;&#x53EF;&#x4EE5;&#x627E;&#x5230;&#x6211;&#x4EEC;&#x968F;&#x673A;&#x7684;&#x4E00;&#x4E2A;&#x4F4D;&#x7F6E;&#xFF0C;&#x8FDB;&#x884C;&#x5143;&#x7D20;&#x4E92;&#x6362;&#x3002;
            // &#x7531;&#x4E8E;&#x6211;&#x4EEC;&#x7684;&#x4F2A;&#x968F;&#x673A;&#x6570;&#x662F;double&#x7C7B;&#x578B;&#xFF0C;&#x4E58;&#x4EE5;q&#x540E;&#x8FD8;&#x662F;double&#x7C7B;&#x578B;&#xFF0C;&#x6240;&#x4EE5;&#x6211;&#x4EEC;&#x9700;&#x8981;&#x5C06;&#x8FD9;&#x4E2A;&#x6570;&#x5F3A;&#x5236;&#x8F6C;&#x6362;&#x4E3A;int&#x7C7B;&#x578B;&#x3002;
            Card temp = Cards[num]; // &#x6211;&#x4EEC;&#x5B9A;&#x4E49;&#x4E00;&#x4E2A;temp&#xFF0C;&#x7528;&#x6765;&#x5B58;&#x653E;&#x968F;&#x673A;&#x51FA;&#x6765;&#x7684;&#x4F4D;&#x7F6E;&#x7684;&#x5143;&#x7D20;&#x3002;
            Cards[num] = Cards[i];// &#x6211;&#x4EEC;&#x5C06;&#x968F;&#x673A;&#x51FA;&#x6765;&#x7684;&#x4F4D;&#x7F6E;&#x7684;&#x5143;&#x7D20;&#x66FF;&#x6362;&#x4E3A;&#x6211;&#x4EEC;&#x539F;&#x59CB;&#x5143;&#x7D20;&#x3002;
            Cards[i] = temp;// &#x6700;&#x540E;&#x6211;&#x4EEC;&#x5C06;&#x6211;&#x4EEC;&#x5B58;&#x653E;&#x7684;&#x5143;&#x7D20;&#x586B;&#x5145;&#x4F1A;&#x539F;&#x59CB;&#x5143;&#x7D20;&#x7684;&#x4F4D;&#x7F6E;&#x3002;
            // &#x81F3;&#x6B64;&#xFF0C;&#x6211;&#x4EEC;&#x7ECF;&#x8FC7;n&#x8F6E;&#x7684;&#x5FAA;&#x73AF;&#xFF0C;&#x5C31;&#x53EF;&#x4EE5;&#x8FBE;&#x5230;&#x6211;&#x4EEC;&#x60F3;&#x8981;&#x7684;&#x6D17;&#x724C;&#x6548;&#x679C;&#x3002;

        }
    }

    public void deal(Card[] Cards) {// &#x6700;&#x540E;&#xFF0C;&#x6211;&#x4EEC;&#x6765;&#x521B;&#x5EFA;&#x4E00;&#x4E2A;&#x53D1;&#x724C;&#x7684;&#x65B9;&#x6CD5;&#xFF0C;&#x5176;&#x5B9E;&#x5C31;&#x662F;&#x4E00;&#x4E2A;&#x6253;&#x5370;&#x7684;&#x65B9;&#x6CD5;&#x3002;
        System.out.println(Arrays.toString(Cards));
        // &#x53D1;&#x724C;&#x7684;&#x60C5;&#x51B5;&#x662F;&#x4E0D;&#x662F;&#x5C31;&#x662F;&#x6253;&#x5370;&#x4E00;&#x904D;&#x6211;&#x4EEC;&#x5DF2;&#x7ECF;&#x5B58;&#x653E;&#x597D;&#x7684;&#x6570;&#x7EC4;&#x5462;&#xFF1F;&#x5BF9;&#x6EF4;&#xFF01;&#xFF01;&#xFF01;
        // &#x7531;&#x4E8E;&#x6211;&#x4EEC;&#x5B9A;&#x4E49;&#x597D;&#x7684;&#x6251;&#x514B;&#x724C;&#x662F;&#x6570;&#x7EC4;&#xFF0C;&#x6240;&#x4EE5;&#x4E3A;&#x4E86;&#x6253;&#x5370;&#x51FA;&#x6211;&#x4EEC;&#x5B58;&#x653E;&#x597D;&#x7684;&#x6570;&#x7EC4;&#xFF0C;&#x6211;&#x4EEC;&#x5C31;&#x53EF;&#x4EE5;&#x8FD0;&#x7528;&#x5DF2;&#x7ECF;&#x5C01;&#x88C5;&#x597D;&#x7684;toString&#x65B9;&#x6CD5;&#x6253;&#x5370;&#x6570;&#x7EC4;&#x3002;
        // &#x4F46;&#x662F;&#xFF0C;toString&#x65B9;&#x6CD5;&#x867D;&#x7136;&#x53EF;&#x4EE5;&#x6253;&#x5370;&#x6570;&#x7EC4;&#xFF0C;&#x4F46;&#x662F;&#x6253;&#x5370;&#x7684;&#x6570;&#x7EC4;&#x90FD;&#x662F;&#x5185;&#x5B58;&#x5730;&#x5740;&#xFF0C;&#x8FD9;&#x6837;&#x53EF;&#x4E0D;&#x884C;&#x3002;
        // &#x4E3A;&#x4E86;&#x6253;&#x5370;&#x51FA;&#x6211;&#x4EEC;&#x9700;&#x8981;&#x7684;&#x4E1C;&#x897F;&#xFF0C;&#x6211;&#x4EEC;&#x5C31;&#x9700;&#x8981;&#x5728;&#x524D;&#x9762;&#x52A0;&#x4E0A;Arrays.&#x6765;&#x4FEE;&#x9970;&#xFF0C;&#x8FD9;&#x6837;&#x5C31;&#x53EF;&#x4EE5;&#x6253;&#x5370;&#x51FA;&#x6211;&#x4EEC;&#x60F3;&#x8981;&#x7684;&#x6251;&#x514B;&#x724C;&#x4E86;&#x3002;

    }

    public static void jeiqu() {// &#x4E00;&#x4E2A;&#x622A;&#x53D6;&#x6570;&#x7EC4;&#x524D;n&#x4E2A;&#x7684;&#x65B9;&#x6CD5;&#x3002;
        Card arr[] = java.util.Arrays.copyOf(Cards, 18);//&#x6211;&#x4EEC;&#x5B9A;&#x4E49;&#x4E00;&#x4E2A;&#x65B0;&#x7684;&#x6570;&#x7EC4;&#xFF0C;&#x7528;&#x6765;&#x5B58;&#x653E;&#x622A;&#x53D6;&#x7684;&#x6570;&#x7EC4;&#xFF08;&#x6B64;&#x5904;&#x8BBE;&#x7F6E;&#x622A;&#x53D6;&#x524D;18&#x4E2A;&#x5143;&#x7D20;&#xFF09;
        System.out.println(Arrays.toString(arr));//&#x6211;&#x4EEC;&#x5EF6;&#x7EED;&#x4E0A;&#x9762;&#x7684;&#x65B9;&#x6CD5;&#xFF0C;&#x6253;&#x5370;&#x6574;&#x4E2A;&#x6570;&#x7EC4;&#x3002;

    }

    public static String[] arr;

    public static void main(String[] args) {
        Poker p = new Poker();
        System.out.println("&#x6D17;&#x724C;&#x524D;&#xFF1A;");
        p.poker();
        p.deal(p.Cards);
        System.out.println("&#x6D17;&#x724C;&#x540E;");
        p.shuffle();
        p.deal(p.Cards);
        p.jeiqu();

    }

}

Java编程作业

最后我再附上源代码图:

Java编程作业

Java编程作业

Original: https://www.cnblogs.com/soosoo/p/16060152.html
Author: HeartCloud
Title: Java编程作业

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/599111/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球