1

私はこのコードを持っています:

import java.util.*;

class Uke44{
    public static void main(String[]args){

    Scanner input=new Scanner(System.in);
    boolean lokke=true;

    System.out.println("Vennligst oppgi navn: ");
    String navn=input.nextLine();

    while(lokke){

    for(int i=0; i<100; i++){
        System.out.println(navn);
    }

    System.out.println("Gi et nytt navn? j/n: ");
    char valg = input.next().charAt(0);

    if(valg.contains("j")){
        lokke=true;
        System.out.println("Skriv et nytt navn: ");
        navn=input.nextLine();

    }else{
        lokke=false;
    }
    }
    }
}

そして、私がやりたいことは、ユーザーがプロンプトで j を入力すると、lokke 変数を true に再設定するだけで、ループが再び実行され、ユーザーは j または n を入力するように求められます。彼女はプログラムを続けたいと思っています。しかし、 valg.contains("j")) は機能しません。以前は、可能な選択肢を独自の変数に保存し、「==」演算子を使用してプログラムが等しいかどうかをチェックする必要がありました。しかし、もっと簡単な方法はありますか?イコールトか何か?

4

3 に答える 3

0
import java.util.*;

class Uke44{
    public static void main(String[]args){

    Scanner input=new Scanner(System.in);
    boolean lokke=true;

    System.out.println("Vennligst oppgi navn: ");
    String navn=input.nextLine();

    while(lokke)
    {

    for(int i=0; i<2; i++)
        System.out.println(navn);


    System.out.println("Gi et nytt navn? j/n: ");
    char valg = input.next().charAt(0);
    System.out.println(valg);

    if(valg=='j')
    {
        lokke=true;
        System.out.println("Skriv et nytt navn: ");
        Scanner input1=new Scanner(System.in);
        navn=input1.nextLine();



    }
    else
        lokke=false;

    } 
    }
}

これは正しいコードです。

そして基本的に変更された部分:

 if(valg=='j')
    {
        lokke=true;
        System.out.println("Skriv et nytt navn: ");
        Scanner input1=new Scanner(System.in);
        navn=input1.nextLine();
于 2013-10-15T14:18:17.940 に答える