2014-05-10 30 views
7

sto cercando di stampare i dati di test utilizzati in prove di WebDriver all'interno di una riga di stampa in JavaCome stampare più righe variabili in java

ho bisogno di stampare più variabili utilizzate in una classe all'interno di una funzione system.out.print (printf/println/qualunque).
Potete aiutarmi ragazzi?

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); 

ho bisogno di quelle di stampa in un comunicato stampa come:
Nome: (il valore della variabile che ho usato)
Cognome: (il valore della variabile che ho usato)

Utilizzando qualcosa come sotto dà il risultato esatto.
Ma ho bisogno di ridurre il numero di linee printf e utilizzare un modo più efficiente.

System.out.printf("First Name: ", firstname); 
System.out.printf("Last Name: ", lastname); 

Grazie!

+0

La domanda non ha nulla a che fare con il selenio. Rimuovi questo tag (e la parte del codice che utilizza Selenium), e riceverai una risposta istantaneamente ... –

risposta

19

Si può fare con 1 printf:

System.out.printf("First Name: %s\nLast Name: %s",firstname, lastname); 
2
System.out.println("First Name: " + firstname); 
System.out.println("Last Name: " + lastname); 

o

System.out.println(String.format("First Name: %s", firstname)); 
System.out.println(String.format("Last Name: %s", lastname)); 
+0

grazie .. Posso integrare le linee insieme e stampare tutto all'interno di una funzione system.out.println? questa è la mia preoccupazione – Harshini

5

Oppure provare questo:

System.out.println("First Name: " + firstname + " Last Name: "+ lastname +"."); 

Buona fortuna!

0

È possibile creare la classe Person con i campi firstName e lastName e definire il metodo toString(). Qui ho creato un metodo util che restituisce la presentazione String di un oggetto Person.

Questo è un esempio

principale

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(); 
    } 
} 

persona

public class Person { 

    private String firstName; 
    private String lastName; 

    //getters, setters, constructors. 
} 

Io preferisco un metodo util separato per toString(), perché toString() è usato per il debug. https://stackoverflow.com/a/3615741/4587961

Avevo esperienza di scrittura di programmi con molte uscite: interfaccia utente HTML, file Excel o txt, console. Possono avere bisogno di una presentazione di oggetti diversa, quindi ho creato una classe util che crea una stringa a seconda dell'output.

Problemi correlati