我想提升自己

molebin 2013-11-29 08:56:25
package figure;

class Square{
double x,y;
Square(double x1,double y1){
x=x1;y=y1; //构造方法
}

double getArea(){ //求面积的方法
double s=x*y;
return s;
}
double girth(){
double length=2*x+(2*y);
return length;
}
}

public class Ex2 {
public static void main(String[] args){
double s1,length1;
Square q1=new Square(6,8);

s1=q1.getArea();
length1=q1.girth();
System.out.println("矩形的面积"+s1+"矩形的周长"+length1);

}



}

如上面所述 6,8是参数 我可以把6和8变成我能够自己定义的参数么 。也就是让我输入2个数 然后会计算出面积和周长
...全文
153 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
南猿北蛰 2013-11-29
  • 打赏
  • 举报
回复
引用 2 楼 molebin 的回复:
[quote=引用 1 楼 jackwumengfeng 的回复:] 随便用个 Scanner s = new Scanner(System.in); String str = s.next(); 这样的在控制台输入不就ok了
那我怎么才能把我输入的传递给x,y呢[/quote] 你这里是构造函数,你输入的值传进去就OK了 Square q1=new Square(6,8); 比如,你输入的值是: String s1 = "123"; String s2 = "234"; double d1 = Double.parseDouble(s1); double d2 = Double.parseDouble(s2); Square q1=new Square(d1,d2); 这样就OK了
ghw554557313 2013-11-29
  • 打赏
  • 举报
回复
先不要急着提升 先学基础
molebin 2013-11-29
  • 打赏
  • 举报
回复
引用 1 楼 jackwumengfeng 的回复:
随便用个 Scanner s = new Scanner(System.in); String str = s.next(); 这样的在控制台输入不就ok了
那我怎么才能把我输入的传递给x,y呢
南猿北蛰 2013-11-29
  • 打赏
  • 举报
回复
随便用个 Scanner s = new Scanner(System.in); String str = s.next(); 这样的在控制台输入不就ok了
molebin 2013-11-29
  • 打赏
  • 举报
回复
引用 7 楼 jackwumengfeng 的回复:
[quote=引用 5 楼 molebin 的回复:] [quote=引用 4 楼 jackwumengfeng 的回复:] [quote=引用 2 楼 molebin 的回复:] [quote=引用 1 楼 jackwumengfeng 的回复:] 随便用个 Scanner s = new Scanner(System.in); String str = s.next(); 这样的在控制台输入不就ok了
那我怎么才能把我输入的传递给x,y呢[/quote] 你这里是构造函数,你输入的值传进去就OK了 Square q1=new Square(6,8); 比如,你输入的值是: String s1 = "123"; String s2 = "234"; double d1 = Double.parseDouble(s1); double d2 = Double.parseDouble(s2); Square q1=new Square(d1,d2); 这样就OK了[/quote] 跪求一个完整点的 我把我的分全给你 大神求赏脸[/quote]
import java.util.Scanner;


public class CalcSquare {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		//注意:输入格式必须如:12,23
		//输入后按enter
		Scanner scanner = new Scanner(System.in);
		String str = scanner.next();
		String[] arr = str.split(",");
		double x = Double.parseDouble(arr[0]);
		double y = Double.parseDouble(arr[1]);
		
		Square square = new Square(x,y);
		
		double area = square.getArea();
		double girth = square.getGirth();
		
		System.out.println("矩形长为:"+x+" ,宽为:"+y);
		System.out.println("矩形面积为:"+area);
		System.out.println("矩形周长为:"+girth);
		
	}

}

class Square{
	double x,y;
	
	Square(double x,double y){
		this.x=x;
		this.y=y;   
	}

	/**
	 * 面积
	 * @return
	 */
	double getArea(){ 
		double s=x*y;
		return s;
	}
	
	/**
	 * 周长
	 * @return
	 */
	double getGirth(){ 
		double girth =2*(x+y);
		return girth;
	}
	
}
[/quote] 其实在简单点可以 用 Double a=s.nextDouble(); Double b=s.nextDouble(); 其实我想说这样还没有达到 能够连续输入 2个数 比如 输入 a b 然后敲回车键
南猿北蛰 2013-11-29
  • 打赏
  • 举报
回复
测试结果: 矩形长为:12.0 ,宽为:3.0 矩形面积为:36.0 矩形周长为:30.0
南猿北蛰 2013-11-29
  • 打赏
  • 举报
回复
引用 5 楼 molebin 的回复:
[quote=引用 4 楼 jackwumengfeng 的回复:] [quote=引用 2 楼 molebin 的回复:] [quote=引用 1 楼 jackwumengfeng 的回复:] 随便用个 Scanner s = new Scanner(System.in); String str = s.next(); 这样的在控制台输入不就ok了
那我怎么才能把我输入的传递给x,y呢[/quote] 你这里是构造函数,你输入的值传进去就OK了 Square q1=new Square(6,8); 比如,你输入的值是: String s1 = "123"; String s2 = "234"; double d1 = Double.parseDouble(s1); double d2 = Double.parseDouble(s2); Square q1=new Square(d1,d2); 这样就OK了[/quote] 跪求一个完整点的 我把我的分全给你 大神求赏脸[/quote]
import java.util.Scanner;


public class CalcSquare {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		//注意:输入格式必须如:12,23
		//输入后按enter
		Scanner scanner = new Scanner(System.in);
		String str = scanner.next();
		String[] arr = str.split(",");
		double x = Double.parseDouble(arr[0]);
		double y = Double.parseDouble(arr[1]);
		
		Square square = new Square(x,y);
		
		double area = square.getArea();
		double girth = square.getGirth();
		
		System.out.println("矩形长为:"+x+" ,宽为:"+y);
		System.out.println("矩形面积为:"+area);
		System.out.println("矩形周长为:"+girth);
		
	}

}

class Square{
	double x,y;
	
	Square(double x,double y){
		this.x=x;
		this.y=y;   
	}

	/**
	 * 面积
	 * @return
	 */
	double getArea(){ 
		double s=x*y;
		return s;
	}
	
	/**
	 * 周长
	 * @return
	 */
	double getGirth(){ 
		double girth =2*(x+y);
		return girth;
	}
	
}
a271352420 2013-11-29
  • 打赏
  • 举报
回复
import java.util.Scanner;


class Square {
	double x, y;

	Square(double x1, double y1) {
		x = x1;
		y = y1; // 构造方法
	}

	double getArea() { // 求面积的方法
		double s = x * y;
		return s;
	}

	double girth() {
		double length = 2 * x + (2 * y);
		return length;
	}
}

public class Ex2 {
	public static void main(String[] args) {
		System.out.println("请输入第1个参数");
		Scanner s = new Scanner(System.in);
		double a = Double.parseDouble(s.next());
		
		System.out.println("请输入第2个参数");
		double b = Double.parseDouble(s.next());
	
	
		double s1, length1;
		Square q1 = new Square(a, b);

		s1 = q1.getArea();
		length1 = q1.girth();
		System.out.println("矩形的面积" + s1 + "矩形的周长" + length1);

	}

}
请多指教,不知道你说的是不是这样的??
molebin 2013-11-29
  • 打赏
  • 举报
回复
引用 4 楼 jackwumengfeng 的回复:
[quote=引用 2 楼 molebin 的回复:] [quote=引用 1 楼 jackwumengfeng 的回复:] 随便用个 Scanner s = new Scanner(System.in); String str = s.next(); 这样的在控制台输入不就ok了
那我怎么才能把我输入的传递给x,y呢[/quote] 你这里是构造函数,你输入的值传进去就OK了 Square q1=new Square(6,8); 比如,你输入的值是: String s1 = "123"; String s2 = "234"; double d1 = Double.parseDouble(s1); double d2 = Double.parseDouble(s2); Square q1=new Square(d1,d2); 这样就OK了[/quote] 跪求一个完整点的 我把我的分全给你 大神求赏脸

67,512

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧