私はJavaの初心者ですが、次のプログラムに関する混乱は、なぜそれが値を割り当てるのか、キーボードから変数に入力しwhile( in.hasNext() )
、total
whiletotal = in.intNext()
条件の値を処理するのですか?
錯乱
System.out.print("Enter an Integer value or ctrl+z to terminate: ");
while ( in.hasNext() ) // Check for New Vlaue
{
System.out.print("Enter an Integer value or ctrl+z to terminate: ");
total += in.nextInt(); // Take input for Count
count++;
}
私の混乱は、の条件チェックですwhile loop
。これは通常、最初に条件をチェックしてからステートメントに進みますが、このプログラムでは、に整数値を入力するwhile( in.hasNext() )
と、条件が真になるだけでなく、その値がに割り当てられます。変数なので、total
私の質問、
で私から別の値を取得する代わりに、なぜそれが値を割り当てるのtotal = in.nextInt()
ですか?
メソッドを探したので、値がある場合にのみTruehasNext()
を返します。
完全なプログラム
import java.util.Scanner;
class Practice
{
public static void main( String[] args )
{
int count=0;
int total = 0;
Scanner in = new Scanner(System.in);
System.out.print("Enter an Integer value or ctrl+z to terminate: ");
while ( in.hasNext() ) // Check for New Vlaue
{
System.out.print("Enter an Integer value or ctrl+z to terminate: ");
total += in.nextInt(); // Take input for Count
count++;
}
System.out.printf("\nTatal values are: %d\nToatl of count is : %d",count,total);
} // end main
} // end class Practice