Java自学记录24
Java自学记录Day241、猜数字游戏
一个类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、书写规范,先声明成员变量再书写调用变量方法,构造方法的作用是初始化成员变量 大佬,尽量变量名不要使用a b c 这种,规范一点会好些,自己回顾的时候也知道写了个啥,别人阅读起来也舒服。小小的建议望采纳。 共你山今 发表于 2021-12-12 00:38
大佬,尽量变量名不要使用a b c 这种,规范一点会好些,自己回顾的时候也知道写了个啥,别人阅读起来也舒服 ...
是练习题的要求,我平时不使用这种单字母的命名方式。 试着跟着大神的步伐走,慢慢学习 自2021年12月16日开始,转载博客至博客园(一周投稿三次),吾爱破解将一周投稿一次。 本帖最后由 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;
}
}
}
刚开始学java能看懂一点
页:
[1]