基本的循环部分和C语言差不多
但是while循环里面有一个挺好玩的东西:
Scanner sc=new Scanner(System.in);
while(sc.hasnext())//可以用来输入很多组带空格的数字
{
int a=sc.nextInt();
int b=sc.nextInt();
System.out.println(a+b);
例如输入:2 3
3 4
结果输出:5
7
PS:hasnext()是属于Scanner()类里面的,但是上文也说了,next()是不能 接收空格的,因此就有了hasnext(),表示每次从控制台读取字符串,但是如果没有结束条件,这个循环便会一直执行,(就像上面是需要输入无数组数字)。为了保证能够有输入结束,可以指定一个输入结束的字符串
例如:quit
while(!sc.hasNext("quit"))
{
String s=sc.nextString();
System.out.println(s);
}//quit字符串保证输入状态结束,这个就像C++语言里面曾经用过的EOF的功能是类似的
当然我还看见很多人用while(sc.hasnextInt()),这个也是可以的
PS:如果当你输入小数的时候使用这个顶多就是没有结果,但是用上面那个它可能会给你提示一系列的错误
我还看见别人使用while(sc.hasnextLine());(呃呃呃,这个我也一直不太明白它和上面那个的区别是什么,看了别人写的一些博客,还是不太明白==)
for循环部分特属于c语言中的部分:
格式如下:
for(声明语句:表达式)
{
代码部分;
}
说明:
声明语句:声明新的局部变量,该变量的类型必须和数组元素的类型匹配。其作用域限定在循环语句块,其值与此时数组元素的值相等。
表达式:表达式是要访问的数组名,或者是返回值为数组的方法。
举例:
public class Test {
public static void main(String args[]){
int [] numbers = {10, 20, 30, 40, 50};
for(int x : numbers ){
System.out.print( x );
System.out.print(",");
}
System.out.print("\n");
String [] names ={"James", "Larry", "Tom", "Lacy"};
for( String name : names ) {
System.out.print( name );
System.out.print(",");
}
}
}
输出结果:
10,20,30,40,50,
James,Larry,Tom,Lacy,
其他和C语言一样的部分我就不详细说了,请参见下面的博客地址