![](/img/trans.png)
[英]How do I take an input from my scanner from one class and put it in another class
[英]How do I take an user input from Scanner in one class and then apply it to another class in the same package?
例如
package testcircle1;
导入 java.util.Scanner;
公共 class TestCircle1 {
public static void main(String[] args) {
System.out.println("Welcome!!!!");
Circle c1 = new Circle( );
Scanner in= new Scanner(System.in);
System.out.println("Please enter a number");
c1.setRadius() = in.nextDouble();
System.out.println(c1.getRadius());
}
}
package testcircle1; 公共class圈{
public Circle() {
}
public Circle(double radius) {
}
public void setRadius(double radius) {
if (radius >= 0)
this.radius = radius;
}
public double getRadius() {
return radius;
}
}
我究竟做错了什么?
您需要添加以下两个。 1.增加'私人双半径;' 在 class Circle 2. 在 main 方法中,您需要使用 c1.setRadius(in.nextDouble())
提供相同的代码
导入 org.slf4j.Logger; 导入 org.slf4j.LoggerFactory;
导入 java.util.Scanner;
公共 class TestCircle1 {
私人 static 记录器 logger = LoggerFactory.getLogger(TestCircle1.class);
公共 static 无效主(字符串 [] 参数){
System.out.println("Welcome!!!!");
Circle c1 = new Circle();
try {
Scanner in = new Scanner(System.in);
System.out.println("Please enter a number");
if (!in.hasNextDouble()) {
throw new IllegalArgumentException("Input is not a double value");
}
c1.setRadius(in.nextDouble());
System.out.println(c1.getRadius());
} catch (IllegalArgumentException e) {
logger.error(e.getMessage());
}
} }
public class Circle {
private double radius;
public Circle() {
}
public Circle(double radius) {
}
public void setRadius(double radius) {
if (radius >= 0)
this.radius = radius;
}
public double getRadius() {
return radius;
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.