Liste de tableaux avec des entiers et des commentaires d'utilisateurs

Donc, j'ai un devoir scolaire que je suis coincé sur et voudrais quelques conseils sur la façon de l'aborder. La tâche est:

Le but de ce tp est de manipuler une liste de tableaux d'entiers. La mission est de écrire un programme qui: 1. Déclare une liste de tableaux d'entiers. 2. Met en œuvre les méthodes suivantes:  Une méthode qui affiche un menu. Le menu doit être affiché après chaque terminé la sélection du menu. 1. Ajouter des éléments 2. Ajouter un élément à un index spécifique 3. Supprimer un élément à l'index spécifié 4. Afficher min, max, somme et moyenne 5. Recherche 6. Sortie

Donc j'ai déjà le code ici

import java.util.Scanner;

public class ArrayList
{
    static int count;
    static Scanner kb = new Scanner(System.in);

    public static void main()
    {
        int item=0;
        ArrayList numArray = new ArrayList();
        count=0;


        while (item !=6)
        {
            menu();
            item=kb.nextInt();
            if (item==1)
                addElements(numArray);
            //else if (item==2)
                //printArray(numArray);
        }

        System.out.println("Goodby!");

    }

    public static void menu()
    {
        System.out.println("1. Add Elements");
        System.out.println("2. Add an element at a specific index");
        System.out.println("3. Remove an element at a specific index");
        System.out.println("4. Show min, max, sum and average");
        System.out.println("5. Search");
        System.out.println("6. Exit");
        System.out.print(": ");
    }

    public static void addElements(ArrayList arr)
    {
        count=0;
        int num;
        System.out.print("Enter integer values to fill the arrayList -vevalue to stop: ");
        do
        {
            num = kb.nextInt();
            if (num >=0)
            {
                arr.add(count);
                count++;
            }
        } while (num > 0);

    }

Donc, fondamentalement, lorsque vous entrez 1 dans la console, on vous invite à ajouter d'entiers vide arraylist j'ai établi dans le début. Im juste avoir des ennuis avec la première partie seule avec la syntaxe sur la façon d'obtenir la saisie de l'utilisateur pour être ajouté à la liste de tableau.

+1
2019-09-17 15:50:55
source
2 réponses

Une solution serait de faire ce qui suit:

  • stocker la valeur / posté formulaire dans une variable à l'aide de la valeur du bouton soumettre
  • fossé de l'erreur de la directive et de l'utilisation de l'ancienne version
  • combiner l'ancienne version avec la variable à vérifier si vous avez la forme correcte ou pas

Vous obtiendrez quelque chose comme ceci:

@if ($errors->has('email') && $submitted_form_identifier === $form_identifier) 
    <span>{{ $errors->first('email') }}</span> 
@endif
+1
2019-09-17 16:00:29

Fait intéressant, le @error directive est pas par programmation liée à un champ de saisie par un nom de l'entrée. C'est seulement dans l'espace, liée à un champ de saisie par le voisinage et peut être placé n'importe où sur la page.

Aussi, vous pouvez facilement utiliser n'importe quelle chaîne dans le 0e s de la directive, tant que même est passé à la withErrors() appel dans le contrôleur.

Ainsi, la résolution du problème de ciblage de l'entrée appropriée parmi les plusieurs en devient aussi simple que d'utiliser toute chaîne unique (pas forcément la cible de saisie du nom) en tant que clé dans le withErrors() appel de la méthode et de récupérer le message d'erreur en passant sur la même chaîne à l' @error directive. Dans mon cas, j'ai choisi d'utiliser l'id de compte comme l'unique chaîne.

Dans AccountController.php:

public function update(Request $request, Account $account)
{
    if($request->input('credit') < 0)
    {
        return back()->withErrors([$account->id=>'enter a positive amount']);
    }
    // ... other logic
}

Et dans le code html de la lame de modèle:

@forelse($accounts as $account)
    <form method="POST" action="{{ route('account.update', $account->id) }}">
        @csrf
        <div>
            <input type="number" name="credit" class="@error($account->id) is-invalid @enderror" required>
            <input type="submit" class="btn" value="ok">
            @error($account->id)
                <span class="invalid-feedback" role="alert">
                    <strong>{{ $message }}</strong>
                </span>
            @enderror
        </div>
    </form>
@empty
@endforelse

REMARQUE: à l'Aide d'un inexistante clé dans tous les @error directive rompt le code pour les autres @error directives et ne causera pas de messages d'erreur à afficher.

+1
2019-09-17 16:00:29

Voir d'autres questions sur les étiquettes