JXNU1999python 发表于 2021-12-11 20:14

Java自学记录24

Java自学记录Day24

1、猜数字游戏
一个类A有一个实例变量v,从键盘接收一个正整数作为实例变量v的初始值。
另外再定义一个类B,对A类的实例变量v进行猜测。
        如果大了则提示大了
        小了则提示小了
        等于则提示猜测成功

        public class NumGame {
                /**
               * 1、猜数字游戏
        一个类A有一个实例变量v,从键盘接收一个正整数作为实例变量v的初始值。
        另外再定义一个类B,对A类的实例变量v进行猜测。
                如果大了则提示大了
                小了则提示小了
                等于则提示猜测成功
               * @Param args
               */
                public static void main(String[] args) {
                        Scanner input=new Scanner(System.in);
                        A numGame=new A();
                        int num=numGame.getV();
                        System.out.println(num);
                        System.out.println("请输入要猜测的正整数: ");
                        int personNum=input.nextInt();
                        if(personNum>num){
                                System.out.println("您猜大了");
                        }else if(personNum<num){
                                System.out.println("您猜小了");
                        }else if(personNum==num){
                                System.out.println("恭喜您您猜测成功");
                        }
                }
       
        }
        class A{
                private int v;
                Scanner input=new Scanner(System.in);
                public int getV(){
                        System.out.print("请输入一个正整数: ");
                        int v=input.nextInt();
                        this.v=v;
                        return v;
                }
               
        }
2、请定义一个交通工具(Vehicle)的类
其中有属性:

        速度(speed)
        体积(size)等等
        方法移动(move())
        设置速度(setSpeed(int speed))
        加速speedUp(),
        减速speedDown()等等.

最后在测试类Vehicle中的main()中实例化一个交通工具对象
并通过方法给它初始化speed,size的值并且打印出来。

另外调用加速减速的方法对速度进行改变。

        public class Vehicle {
                double speed;
                public double setSpeed(double speed){
                        this.speed=speed;
                        return speed;
                }
                public double speedUp(double speedUp){
                        speed=speed+speedUp;
                        return speed;
                }
                public double speedDown(double speedDown){
                        speed=speed-speedDown;
                        return speed;
                }
                String size;
                public void move(){
                       
                }
                public static void main(String[] args){
                        Vehicle train=new Vehicle();
                        System.out.println(train);//输出对象的地址
                        train.size="1000立方米";
                        train.speed=100;
                        System.out.println("train的体积是"+train.size);
                        System.out.println("train的速度是"+train.speed+"km/h");
                        train.speedUp(10);
                        System.out.println("train的速度是"+train.speed+"km/h");
                        train.speedDown(30);
                        System.out.println("train的速度是"+train.speed+"km/h");
                }
        }
3、在程序中经常要对时间进行操作但是并没有时间类型的数据。
那么我们可以自己实现一个时间类来满足程序中的需要。

定义名为MyTime的类其中应有三个整型成员时hour分minute秒second
为了保证数据的安全性这三个成员变量应声明为私有。

为MyTime类定义构造方法以方便创建对象时初始化成员变量。
再定义diaplay方法用于将时间信息打印出来。

为MyTime类添加以下方法

        addSecond(int sec)
        addMinute(int min)
        addHour(int hou)
        subSecond(int sec)
        subMinute(int min)
        subHour(int hou)
分别对时、分、秒进行加减运算。

        public class MyTime {
                public MyTime(){
                }
                public MyTime(int hour,int minute,int second){
                }
                private int hour=0;
                public void addHour(int hou){
                        hour=hour+hou;
                        return;
                }
                public void subHour(int hou){
                        hour=hour-hou;
                }
                private int minute=0;
                public void addMinute(int min){
                        minute=minute+min;
                        return;
                }
                public void subMinute(int min){
                        minute=minute-min;
                }
                private int second=0;
                public void addSecond(int sec){
                        second=second+sec;
                        return;
                }
                public void subSecond(int sec){
                        if(sec<=60){
                                second=second-sec;
                        }
                }
                public void dispaly(){
                        System.out.println("吃饭时间是: "+hour+"小时"+minute+"分钟"+second+"秒");       
                }
                public static void main(String[] args) {
                        MyTime eat=new MyTime();
                        eat.addHour(10);
                        eat.subHour(3);
                        eat.addMinute(50);
                        eat.subMinute(40);
                        eat.addSecond(50);
                        eat.subSecond(10);
                        eat.dispaly();
       
                }
       
        }

4、编写Java程序模拟简单的计算器。

定义名为Number的类其中有两个整型数据成员n1和n2应声明为私有。
编写构造方法赋予n1和n2初始值

再为该类定义加addition()、减subtration()、乘multiplication()、除division()等公有实例方法

分别对两个成员变量执行加、减、乘、除的运算。

在main方法中创建Number类的对象调用各个方法并显示计算结果

        public class Number {
                private int n1;
                private int n2;
                public Number(){
                       
                }
                public Number(int n1,int n2){
                        this.n1=n1;
                        this.n2=n2;
                }
                public int setN1(int n1){
                        this.n1=n1;
                        return n1;
                }
                public int setN2(int n2){
                        this.n2=n2;
                        return n2;
                }
                public int addition(int n1,int n2){
                        int result=n1+n2;
                        System.out.println(n1+"+"+n2+"="+result);
                        return result;
                }
                public int subtration(int n1,int n2){
                        int result=n1-n2;
                        System.out.println(n1+"-"+n2+"="+result);
                        return result;
                }
                public int multiplication(int n1,int n2){
                        int result=n1*n2;
                        System.out.println(n1+"×"+n2+"="+result);
                        return result;
                }
                public int division(int n1,int n2){
                        int result=n1/n2;
                        System.out.println(n1+"÷"+n2+"="+result);
                        return result;
                }
                public void display(){
                        System.out.println(n1+"是第一个数,"+n2+"是第二个数");
                }
                public static void main(String[] args){
                        Number num=new Number();
                        num.addition(1,9);
                        num.subtration(2,7);
                        num.multiplication(2,9);
                        num.division(3,6);
                       
                }
        }

5、编写Java程序用于显示人的姓名和年龄。
定义一个人类Person该类中应该有两个私有属性姓名name和年龄age。
定义构造方法用来初始化数据成员。再定义显示display方法将姓名和年龄打印出来。
在main方法中创建人类的实例然后将信息显示

        public class Person {
                private int age;
                private String name;
                public Person(){
               
                }
                public Person(String name,int age){
                        this.name=name;
                        this.age=age;
                }
                public String setName(String name){
                        this.name=name;
                        return name;
                }
                public int setAge(int age){
                        this.age=age;
                        return age;
                }
                public void display(){
                        System.out.println(name+"的年龄是"+age);
                       
                }
                public static void main(String[] args) {
                        Person ming=new Person();
                        ming.setName("小明");
                        ming.setAge(22);
                        ming.display();
       
                }

        }
6、书写规范,先声明成员变量再书写调用变量方法,构造方法的作用是初始化成员变量

共你山今 发表于 2021-12-12 00:38

大佬,尽量变量名不要使用a b c 这种,规范一点会好些,自己回顾的时候也知道写了个啥,别人阅读起来也舒服。小小的建议望采纳。

JXNU1999python 发表于 2021-12-12 08:37

共你山今 发表于 2021-12-12 00:38
大佬,尽量变量名不要使用a b c 这种,规范一点会好些,自己回顾的时候也知道写了个啥,别人阅读起来也舒服 ...

是练习题的要求,我平时不使用这种单字母的命名方式。

slbcmgn 发表于 2021-12-12 08:50

试着跟着大神的步伐走,慢慢学习

JXNU1999python 发表于 2021-12-16 08:35

自2021年12月16日开始,转载博客至博客园(一周投稿三次),吾爱破解将一周投稿一次。

abellixun 发表于 2021-12-16 15:34

本帖最后由 abellixun 于 2021-12-16 15:43 编辑

1、猜数字游戏可以进行优化,你这个猜数字,只能猜一次,就得重新运行。


import java.util.Scanner;

public static void main(String[] args) {

      A numGame=new A();
//进入循环,猜中为止
while(true){
System.out.println("请输入要猜测的正整数(0-100之间的随机数): ");
Scanner sc=new Scanner(System.in);
int num =sc.nextInt();
int a= numGame.setNum();
//对输入的值进行判断
if(num>a){
System.out.println("您猜大了");
}else if(num<a){
System.out.println("您猜小了");
}else if(num==a){
//答案正确跳出循环
System.out.println("恭喜您您猜测成功");
break;
}
}

    }

//定义一个A类生成随机数
//导入随机数包
import java.util.Random;
public class A{
public int setNum(){
Random rand = new Random();
//用参数来接收0-100之间的随机数,并返回值。
int sz = rand.nextInt(101);
return sz;
}
}


}

denweiaa 发表于 2022-4-2 17:58

刚开始学java能看懂一点
页: [1]
查看完整版本: Java自学记录24