用java定义一个股票类Stock,该类包括如右图所示

2024-05-17 12:12

1. 用java定义一个股票类Stock,该类包括如右图所示

public class Stock {
    private String store;// 股票类属性
    private String symbol;// 股票代号
    private String name;// 股票名称
    private BigDecimal currentPrice;// 当前时间的股票价格
    private BigDecimal previouClosingPrice;// 前一天的股票值

 
    /**
     * 返回前一天变到当前时间的百分比
     * @return 百分比
     */
    public double getChangePercent() {
        return this.currentPrice.subtract(this.previouClosingPrice).abs()
                .divide(this.currentPrice, 2, BigDecimal.ROUND_HALF_EVEN)
                .doubleValue();
    }

 
    /**
     * 返回前一天变到当前时间的百分比
     * @param currentPrice 当前时间的股票价格
     * @param previouClosingPrice 前一天的股票值
     * @return 百分比
     */
    public double getChangePercent(BigDecimal currentPrice,
            BigDecimal previouClosingPrice) {
        return currentPrice.subtract(previouClosingPrice).abs()
                .divide(currentPrice, 2, BigDecimal.ROUND_HALF_EVEN)
                .doubleValue();
    }

 
    public String getStore() {
        return store;
    }

 
    public void setStore(String store) {
        this.store = store;
    }

 
    public String getSymbol() {
        return symbol;
    }

 
    public void setSymbol(String symbol) {
        this.symbol = symbol;
    }

 
    public String getName() {
        return name;
    }

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

 
    public BigDecimal getCurrentPrice() {
        return currentPrice;
    }

 
    public void setCurrentPrice(BigDecimal currentPrice) {
        this.currentPrice = currentPrice;
    }

 
    public BigDecimal getPreviouClosingPrice() {
        return previouClosingPrice;
    }

 
    public void setPreviouClosingPrice(BigDecimal previouClosingPrice) {
        this.previouClosingPrice = previouClosingPrice;
    }

 
}

用java定义一个股票类Stock,该类包括如右图所示

2. java 设计一个Stock的类,这个类包括:

代码如下:
import java.math.BigDecimal;import java.math.RoundingMode;public class Stock {	private String symbol;	private String name;	private double previousClosingPrice;	private double currentPrice;	// 构造方法	public Stock(String symbol, String name) {		this.symbol = symbol;		this.name = name;	}	//	public double getChangePercent() {		return (currentPrice - previousClosingPrice) / previousClosingPrice;	}	public void setPreviousClosingPrice(double previousClosingPrice) {		this.previousClosingPrice = previousClosingPrice;	}	public void setCurrentPrice(double currentPrice) {		this.currentPrice = currentPrice;	}	public String getSymbol() {		return symbol;	}	public String getName() {		return name;	}	public static void main(String[] args) {		Stock stock = new Stock("Java", "Sun Mircro");		stock.setCurrentPrice(4.35); // 当前价格		stock.setPreviousClosingPrice(4.5);// 前一交易日价格		double d = stock.getChangePercent(); // 价格浮动: 由于是double,下面的计算是N位小数		System.out.println("价格浮动:" + stock.getChangePercent());		// 处理下		BigDecimal bd = new BigDecimal(d * 100); // 乘个100,是为了看效果		bd = bd.setScale(2, RoundingMode.HALF_UP); // 设置2位小数,采用四舍五入		System.out.println("[" + stock.getSymbol() + "] " + stock.getName() + " 价格浮动:" + bd.toString() + "%");	}}亲,如果回答满意,亲及时采纳,你的合作是我们回答的动力,谢谢!

3. 定义一个股票类Stock

定义股票的类:
在类模块中输入下列代码。

public symbol as string
public name as string
public currenprice as currency

public sub 显示股票信息()
msgbox(symbol & vbcrlf & name & currency)
end sub

打印图案
private sub print()
dim x as string
dim y as integer
dim z as integer
x=""
for i=0 to 2 
y=2-i
z=1+i*2
for j=1 to y
x=x & " "
nex j
for j=1 to z
x=x & "#"
next j
x=x & vbcrlf
next i
msgbox(x)
end sub


没有看到第8题,第7题与股票的问题类似。
本例是用VB答复的,其他语言基本类似。 

原来是要Java的:


public class Stock {
 
 private String symbol;
 private String name;
 private double currentPrice;

 public Stock(){
  
 }
 
 public void display(){
  System.out.println("(" + this.symbol + ")" + this.name + ":" + this.currentPrice);
 }

 public String getSymbol() {
  return symbol;
 }

 public void setSymbol(String symbol) {
  this.symbol = symbol;
 }

 public String getName() {
  return name;
 }

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

 public double getCurrentPrice() {
  return currentPrice;
 }

 public void setCurrentPrice(double currentPrice) {
  this.currentPrice = currentPrice;
 }
}

定义一个股票类Stock

4. 在java中编写程序,定义一个学生类

代码如下:
package exam2;

import java.util.ArrayList;
import java.util.List;

/**
编写一个Java应用程序,该程序包括3个类:
定义一个学生类,Student有姓名,学号,选学的课程列表
定义一个课程类:课程名称,课程分数 
(1)初始化一个学生,选择了三门课程,并添加到学生的属性中
(2)实现统计学生的总分功能

1.正确编写2个类(5分)
2.统计学生的总分功能(5分)
*/
public class Test {
public static void main(String[] args) {

List courses = new ArrayList();

// 初始化3门课程及分数
Course course1 = new Course("java", 80);
Course course2 = new Course("Math", 60);
Course course3 = new Course("English", 90);

// 课程对象添加到集合
courses.add(course1);
courses.add(course2);
courses.add(course3);

// 初始化学生对象
Student student = new Student("tom", "2015101", courses);
// student.setStuid("2015101");
// student.setStuname("tom");
// student.setCourses(courses);

// System.out.println(student);

// (2)实现统计 学生 的总分功能

int sum = sumScore(courses);
System.out.println(student.getStuname() + "学生总分:" + sum);

}

private static int sumScore(List courses) {
int sum = 0;
// 用课程对象,来获取课程的分数
for (Course course : courses) {
sum += course.getScore();
}
return sum;
}
}
package exam2;

import java.util.List;

public class Student {
// 定义一个学生类,Student有姓名,学号,选学的课程列表
private String stuname;
private String stuid;
private List courses;

public Student() {
}

public Student(String stuname, String stuid, List courses) {
this.stuname = stuname;
this.stuid = stuid;
this.courses = courses;
}

public String getStuname() {
return stuname;
}

public void setStuname(String stuname) {
this.stuname = stuname;
}

public String getStuid() {
return stuid;
}

public void setStuid(String stuid) {
this.stuid = stuid;
}

public List getCourses() {
return courses;
}

public void setCourses(List courses) {
this.courses = courses;
}

@Override
public String toString() {
return "学生姓名=" + stuname + ",学号=" + stuid + ", 课程=" + courses;
}

}
package exam2;

public class Course {
//定义一个课程类:课程名称,课程分数
private String cname;
private int score;
public Course() {
}
public Course(String cname, int score) {
this.cname = cname;
this.score = score;
}
public String getCname() {
return cname;
}
public void setCname(String cname) {
this.cname = cname;
}
public int getScore() {
return score;
}
public void setScore(int score) {
this.score = score;
}
@Override
public String toString() {
return "[课程名称=" + cname + ", 课程分数=" + score + "]";
}

}
/*
运行:
tom学生总分:230
*/

扩展资料:
Public 语句说明
1.Public 语句声明的变量在所有应用程序的所有没有使用OptionPrivate Module 的模块的任何过程中都是可用的;若该模块使用了 OptionPrivate Module,则该变量只是在其所属工程中是公用的。
2.使用Public 语句可以声明变量的数据类型。例如,下面的语句声明了一个 Integer 类型的变量。
3.Public NumberOfEmployees As Integer 也可以使用Public 语句来声明变量的对象类型。下面的语句为工作表的新实例声明了一个变量。
参考资料:百度百科-Public 语句

5. 如果一个Java Applet程序文件中定义有3个类……

java每个类在编译之后都会产生一个 "类名.calss"的文件,即使是匿名内部类,也会产生相应的字节码文件,如果A类里面有个匿名内部类,则它编译之后对应的字节码为:A$1.class

如果一个Java Applet程序文件中定义有3个类……

6. 编写Java程序,定义一个学生类,并编写主类测试该类的功能。基本要求如下:

代码已经编译通过

import java.util.*;
public class MainClass_StudentInfor{
  public static void main(String args[]){
              boolean e=true;
              Student stu=new Student();
              Scanner sc=new Scanner(System.in);
        	    while(e){
        		   System.out.println("\t\t\t\t\t*********欢迎进入学生信息系统*********\t\t\t\t\t");
                   System.out.println("\t\t\t\t\t********** 1:录入学生的信息********\t\t\t\t\t");
                   System.out.println("\t\t\t\t\t***********2:输出信息**************\t\t\t\t\t");
                   System.out.println("\t\t\t\t\t***********3:求总分****************\t\t\t\t\t");
                   System.out.println("\t\t\t\t\t***********4求均分*****************\t\t\t\t\t");
                   System.out.println("\t\t\t\t\t***********5:成绩排序**************\t\t\t\t\t");
                   System.out.println("\t\t\t\t\t***********6:检索成绩**************\t\t\t\t\t");
                   System.out.println("\t\t\t\t\t***********7:求最大值和最小值**************\t\t\t\t\t");
                   System.out.println("\t\t\t\t\t***********8:结束程序 ***************\t\t\t\t\t");
                   try{
                	  byte b=sc.nextByte();
               switch(b){
                 case 1:
                     stu.inputInfo();break;
                 case 3:
                     stu.getSum();break;
                 case 4:
               	  stu.getAver();break;
                 case 2:
               	  stu.printInfo();break;
                 case 5:
               	  stu.sort();break;
                 case 6:
               	  stu.index();break;
                 case 7:
                  	  stu.indexBL();break;
                 case 8:
                   e=false;
                }
                   }
                   catch(NullPointerException f){
                	   f.printStackTrace(); 
                	   System.out.println("请正确操作");
                   }
            }
   }
}

enum Sex{
  男,女
}
class Student{
    int number;
    Sex a;
    String name;
    float sum=0;
    float average;
    float score[];
    String subject[]={"高数","英语","C语言"};
    void inputInfo(){//录入学生基本信息
        Scanner sc=new Scanner(System.in);
        System.out.println("请输入学号 :");
        number=sc.nextInt();
        System.out.println("请输入姓名 :");
        name=sc.next();
        System.out.println(" 请输入性别 1:男,2:女");
        int x=sc.nextInt();
        if(x==1)
        {
          a=Sex.男;
          }
        else
        {
          a=Sex.女;
          }
        System.out.println("请输入高数,英语,c语言的成绩:");
        score=new float[3];
        for(int i=0;i<=2;i++)
         {
            score[i]=sc.nextFloat();
            System.out.println(subject[i]+":"+score[i]);
           }
    }
    void printInfo(){//输出学生基本信息
        System.out.println("学号:"+number);
        System.out.println("姓名:"+name);
        System.out.println("性别:"+a);
        for(int i=0;i<3;i++){
        	System.out.println(subject[i]+":"+score[i]);
        }
    }
    void getSum(){
       for(int i=0;i<=2;i++)
        {
          sum=sum+score[i];
         }
       System.out.println(" 学生的总分:"+sum);
     }
     void getAver(){
    	 for(int i=0;i<=2;i++){
           sum=sum+score[i];
          }
        average=sum/3;
        System.out.println(" 学生的平均成绩:"+average);
        }
      
     void sort(){//排序
        Arrays.sort(score);
        System.out.println("学生的成绩排序为:"+Arrays.toString(score));
       }
     void index(){//查询成绩
    	 boolean n=true;
    	 while(n){
    		 Scanner sc=new Scanner(System.in);
    		 System.out.println("请输入,1检索开始,2检索结束");
    		 int m=sc.nextInt();
    		 switch(m){
    		 case 1:
    		      System.out.println("请输入您要查找那门课的成绩0:高数;1:英语:2:C语言");
    	          Scanner sc1=new Scanner(System.in);
    	          int c=sc1.nextInt();
    	          System.out.println(subject[c]+score[c]);
    	          System.out.println("您是否还要查找其他科目的成绩");
    	          break;
    		 case 2:
    			 n=false;
    		 }
    	 }
       } 
     void indexBL(){
    	 float biggest=0;
    	 float lowest=100;
    	 for(int i=0;i<3;i++){
    		 if(biggest<=score[i]){
    			 biggest=score[i];
    		 }
    		 if(lowest>=score[i]){
    			 lowest=score[i];
    		 }
    	 }
    	 System.out.println("该生的最高成绩是"+biggest);
    	 System.out.println("该生的最低成绩是"+lowest);
     }
}

7. 编写一个java应用程序,该程序中有3个类:Lader、Circle和主类Test。具体要求如下:Lader类具有类型为doubl

//Lader类
public class Lader {
	double sd;
	double xd;
	double height;
	double area;
	
	 Lader(double sd,double xd,double height){
		 this.sd=sd;
		 this.xd=xd;
		 this.height=height;
	 }
	 
	 public void area(){
		 area=1.0/2*(sd+xd)*height;
		System.out.println("梯形面积是:"+area);
	 }
}

//Circle类
public class Circle {
	double r;
	double circle;
	double s;
	
	Circle(double r){
		this.r=r;
		}
	
	public void area(){
		circle=2*Math.PI*r;
		s=Math.PI*Math.pow(r, 2);
		System.out.println("圆的周长为:"+circle);
		System.out.println("圆的面积是:"+s);
	}
}

//测试类
public class Test {
	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		
		Circle circle=new Circle(5);
		circle.area();
		
		 Lader  lader =new Lader(2,3,4);
		 lader.area();
		}
}

编写一个java应用程序,该程序中有3个类:Lader、Circle和主类Test。具体要求如下:Lader类具有类型为doubl

8. 怎样用java定义一个int数组

数组:是一组相关变量的集合数组是一组相关数据的集合,一个数组实际上就是一连串的变量,数组按照使用可以分为一维数组、二维数组、多维数组
数据的有点不使用数组定义100个整形变量:int i1;int i2;int i3
使用数组定义 int i[100];
数组定义:int i[100];只是一个伪代码,只是表示含义的(1)一维数组
一维数组可以存放上千万个数据,并且这些数据的类型是完全相同的,使用java数组,必须经过两个步骤,声明数组和分配内存给该数组,声明形式一声明一维数组:数据类型 数组名[]=null;非配内存给数组:数组名=new 数据类型[长度];声明形式二声明一维数组:数据类型 [] 数组名=null;
(2)java数据类型分为两大类1.基本数据类型int、long操作的时候本身就是具体的内容引用数据类型:数组、类、接口
引用传递的就是一个内存的使用权,一块内存空间,可能有多个人同时使用
2.事例声明数组

数组的声明格式里,数据类型是数组元素的数据类型,常见的有整形、浮点型、与字符型等数组名是用来统一这组相同数据类型元素的名称,其命名规则和变量的相同数组声明后实际上是在栈内存中保存了此数组的名称,结下了是要在堆内存中配置数组所需要的内存,齐产固定是告诉编译器,所声明的数组要存放多少个元素,而new 则是命令编译器根据括号里的长度。
基本数据类型偶读有其默认值:int 0;只要是引用数据类型默认值就是null事例

声明数组的同时分配内存空间声明数组的同时非配内存数据类型 数组名[]=new 数据类型[个数]int score[]=new int[10];声明一个元素个数为10的整形数组score,同时开辟依靠内存空间工期使用java中,由于整形数据类型占用的空间为4个byte,而整个数组score可保存的元素有10个。所以上例中占用的内存共有4*10=40个字节
(3)数组的访问
数组中元素的表示方法想要访问数组里的元素可以利用索引来完成,java的数组索引标号由10开始,以一个score[10]的整形数组为例,score[0]代表第一个元素一直向下,最后一个为score[9]
(4)取得数组的长度在java中取得数组的长度(也就是数组元素的长度)可以利用数组名称.length完成,数组名称.length--返回一个int类型的数据

(5)数组的静态初始化之前的数组,所采用的都是动态初始化,所有的内容在数组声明的时候并不具体的指定,而是以默认值的形式出现静态初始化是指在数组声明后直接为数组指定具体的内容如果想要直接在声明的时候给数组赋初始值,可以采用大括号完成,只要在数组的生命格式后面加上初值的赋值即可,数据类型 数组名 []={初始值0,初始值1,初始值3,....初始值n};

范例排序,在操作中排序是比较常用的从大到小

这个时候不要被i值所迷惑   if(score[i]>score[j]){
这一步主要知识为了比较,实际上完成之后输出的时候是根据j的值排序的
(6)二维数组
二维数组声明的方式和以为数组的类似,内存分配也一样是用new这个关键字
其实声明与分配内存的格式如下动态初始化数据类型 数组名[][];数组名=new 数据类型[行的个数][列的个数];
声明并初始化数组数据类型 数组名[][]=new 数据类型[行的个数][列的个数];静态初始化
(7)二维数组的存储声明二维数组score 同时开辟一段内存空间int score[][]=new int[4][3];整体数据score可保存的元素是4*3=12个,在java中,int数据类型所占用的空间为4个字节,因此该整形数组占用的内存共为4*12=48个字节事例

(8)二维数组静态初始化
用到的时候才会开辟空间,不用的(红色部分)则不开辟空间多维数组一般只是用到二维数组三维数组简单了解