我试图在Java中的打印行内打印webdriver测试中使用的测试数据
我需要在system.out.print
函数(printf / println / whatever)中打印类中使用的多个变量。
你能帮助我吗?
public String firstname;
public String lastname;
firstname = "First " + genData.generateRandomAlphaNumeric(10);
driver.findElement(By.id("firstname")).sendKeys(firstname);
lastname = "Last " + genData.generateRandomAlphaNumeric(10);
driver.findElement(By.id("lastname")).sendKeys(lastname);
我需要在印刷声明中将这些印刷品作为:
名字:(我使用的变量值)
姓氏:(我使用的变量值)
使用下面的内容可以得到确切的结果
但我需要减少printf
行的数量并使用更有效的方式。
System.out.printf("First Name: ", firstname);
System.out.printf("Last Name: ", lastname);
谢谢!
答案 0 :(得分:33)
您可以使用1 printf
:
System.out.printf("First Name: %s\nLast Name: %s",firstname, lastname);
答案 1 :(得分:7)
或试试这个:
System.out.println("First Name: " + firstname + " Last Name: "+ lastname +".");
祝你好运!
答案 2 :(得分:2)
System.out.println("First Name: " + firstname);
System.out.println("Last Name: " + lastname);
或
System.out.println(String.format("First Name: %s", firstname));
System.out.println(String.format("Last Name: %s", lastname));
答案 3 :(得分:1)
您可以使用字段Person
和firstName
创建类lastName
,并定义方法toString()
。在这里,我创建了一个util方法,它返回Person
对象的String表示。
这是一个样本
主要
public class Main {
public static void main(String[] args) {
Person person = generatePerson();
String personStr = personToString(person);
System.out.println(personStr);
}
private static Person generatePerson() {
String firstName = "firstName";//generateFirstName();
String lastName = "lastName";//generateLastName;
return new Person(firstName, lastName);
}
/*
You can even put this method into a separate util class.
*/
private static String personToString(Person person) {
return person.getFirstName() + "\n" + person.getLastName();
}
}
人
public class Person {
private String firstName;
private String lastName;
//getters, setters, constructors.
}
我更喜欢单独的util方法toString()
,因为toString()
用于调试。
https://stackoverflow.com/a/3615741/4587961
我有编写带有许多输出的程序的经验:HTML UI,excel或txt文件,控制台。它们可能需要不同的对象表示,因此我创建了一个util类,它根据输出构建一个String。
答案 4 :(得分:0)
假设我们有可变的date,month和year,那么我们可以像这样在Java中编写它。
SELECT * FROM ORDERINFO2 WHERE <<predicate>>;
输出如下:
2016年4月15日
答案 5 :(得分:-2)
答案可能是这样
int a=1, b=1, c=1;
System.out.println(a+""+b+""+c);
输出
111