web-dev-qa-db-fra.com

Comment imprimer plusieurs lignes variables en java

J'essaie d'imprimer les données de test utilisées dans le test WebDriver à l'intérieur d'une ligne d'impression en Java.

J'ai besoin d'imprimer plusieurs variables utilisées dans une classe dans une fonction system.out.print (printf/println/what).
Pouvez-vous m'aider?

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

J'ai besoin de ces caractères dans une déclaration d'impression comme:
Prénom: (la valeur de variable que j'ai utilisée)
Nom: (la valeur de variable que j'ai utilisée)

Utiliser quelque chose comme ci-dessous donne le résultat exact.
Mais je dois réduire le nombre de lignes printf et utiliser un moyen plus efficace.

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

Merci!

11
Harshini

Vous pouvez le faire avec 1 printf:

System.out.printf("First Name: %s\nLast Name: %s",firstname, lastname);
30
Totò

Ou essayez celui-ci:

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

Bonne chance!

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

ou

System.out.println(String.format("First Name: %s", firstname));
System.out.println(String.format("Last Name: %s", lastname));
2
Justin Jasmann

Vous pouvez créer une classe Person avec les champs firstName et lastName et définir la méthode toString(). Ici, j'ai créé une méthode util qui retourne la présentation String d'un objet Person.

Ceci est un échantillon

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

La personne

public class Person {

    private String firstName;
    private String lastName;

    //getters, setters, constructors.
}

Je préfère une méthode util distincte de toString(), car toString() est utilisé pour le débogage. https://stackoverflow.com/a/3615741/4587961

J'ai eu l'expérience d'écrire des programmes avec de nombreux résultats: interface utilisateur HTML, fichier Excel ou txt, console. Ils peuvent avoir besoin d'une présentation d'objet différente, j'ai donc créé une classe util qui construit une chaîne en fonction de la sortie.

1
Yan Khonski

Supposons que nous ayons une date, un mois et une année variables, nous pourrons l'écrire en Java comme ceci.

int date=15,month=4,year=2016;
System.out.println(date+ "/"+month+"/"+year);

la sortie de ce sera comme ci-dessous: 

15/4/2016

0
Jigar