Input 如何将数据从扫描仪输入构造函数?
我试图获取一个构造函数(string,string,double)并使用scanner输入设置其中的值。感谢您的帮助。代码如下所示 我的程序可以分配我输入的值,但我希望能够从键盘分配它们,我只想使用一个构造函数方法来完成这一点。谢谢 我将其分为两类:Input 如何将数据从扫描仪输入构造函数?,input,java.util.scanner,Input,Java.util.scanner,我试图获取一个构造函数(string,string,double)并使用scanner输入设置其中的值。感谢您的帮助。代码如下所示 我的程序可以分配我输入的值,但我希望能够从键盘分配它们,我只想使用一个构造函数方法来完成这一点。谢谢 我将其分为两类: import java.util.Scanner; public class EmployeeTest { public static void main(String [] args) { Scanner in
import java.util.Scanner;
public class EmployeeTest
{
public static void main(String [] args)
{
Scanner input = new Scanner(System.in);
Employee employee1 = new Employee("james", "ry", 3200);
Employee employee2 = new Employee("jim" , "bob" , 2500.56 );
System.out.println("What is employyee 1's first name? ");
employee1.setFname(input.nextLine());
}
}
class Employee
{
private String fname;
private String lname;
private double pay;
public Employee(String fname, String lname, double pay)
{
this.setFname(fname);
this.lname = lname;
this.pay = pay;
System.out.println("Employee " + fname +" "+ lname + " makes $" +
+ pay + " this month and with a 10% raise, their new pay is $" + (pay * .10 + pay));
}
void setfname(String fn)
{
setFname(fn);
}
void setlname(String ln)
{
lname = ln;
}
void setpay (double sal)
{
pay = sal;
}
String getfname()
{
return getFname();
}
String getlname()
{
return lname;
}
double getpay()
{
if (pay < 0.00)
{
return pay = 0.0;
}
return pay;
}
public String getFname() {
return fname;
}
public void setFname(String fname)
{
this.fname = fname;
}
}
import java.util.Scanner;
公营雇员测验
{
公共静态void main(字符串[]args)
{
扫描仪输入=新扫描仪(System.in);
雇员雇员1=新雇员(“詹姆斯”,“ry”,3200);
雇员2=新雇员(“吉姆”、“鲍勃”,2500.56);
System.out.println(“员工1的名字是什么?”);
employee1.setFname(input.nextLine());
}
}
班级员工
{
私有字符串fname;
私有字符串名称;
私人双薪;
公共雇员(字符串fname、字符串lname、双薪)
{
this.setFname(fname);
this.lname=lname;
这个。支付=支付;
System.out.println(“员工”+fname+“”+lname+”赚$+
+工资+”这个月,加10%的工资,他们的新工资是“+(工资*.10+工资));
}
void setfname(字符串fn)
{
setFname(fn);
}
void setlname(字符串ln)
{
lname=ln;
}
无效设置支付(双倍sal)
{
工资=萨尔;
}
字符串getfname()
{
返回getFname();
}
字符串getlname()
{
返回lname;
}
双倍支付
{
如果(支付<0.00)
{
报酬=0.0;
}
报酬;
}
公共字符串getFname(){
返回fname;
}
公共void setFname(字符串fname)
{
this.fname=fname;
}
}
您可以修改EmployeeTest
类
class EmployeeTest {
public static void main (String...arg) {
Scanner s = new Scanner(System.in);
String[] elements = null;
while (s.hasNextLine()) {
elements = s.nextLine().split("\\s+");
//To make sure that we have all the three values
//using which we want to construct the object
if (elements.length == 3) {
//call to the method which creates the object needed
//createObject(elements[0], elements[1], Double.parseDouble(elements[2]))
//or, directly use these values to instantiate Employee object
} else {
System.out.println("Wrong values passed");
break;
}
}
s.close();
}
}
您好,如果您已经找到了解决方案,您可以回答您的问题。您好,谢谢您的回复。这不是我学过的方法。不过,我会好好利用它。谢谢你的帮助!