初学者的Java入门_输入、输出以及流程控制

初学者的Java入门第三篇来咯!一起了解Java中的输入、输出以及流程控制吧!请添加图片描述

Scanner输入

  在Java中我们使用Scanner来进行输入,当使用Scanner时,我们需要在类前面导入java.util.Scanner包。

Scanner sc=new Scanner(System.in);//创建扫描器对象sc
String str=sc.nextLine();//输入一行字符
Ststem.out.println(str);

上面语句实现了语句的输入和输出。
  Scanner实际上是一个类,当我们需要输入时,应当创建一个扫描器对象并调用它的方法。Scanner的输入方法有许多,其中,我们需要区分一下next()与nextln()。

next():以第一个有效字符为开始,对于输入有效字符前的空白将自动去除,当读取到有效字符后再次读到空白时输入结束。其中,空白可以是空格也可以是回车。也就是说当使用next()输入时,字符串不会含有空格。


nextln():与next()不同的是,它将读入一行字符,中间可以有空格,当输入回车时结束。

print/printf/println输出

  在java中有三个常用的输出语句,即print、printf与println。
首先让我们体会一下三者的不同:

System.out.println(1);  //println输出,自动换行
System.out.println(2);  
System.out.println(3);  
System.out.print(1);  //print直接输出
System.out.print(2);  
System.out.print(3);  
System.out.printf("%d",1);  //printf格式化输出
System.out.printf("%d",2);  
System.out.printf("%d",3);

输出结果为:
输出结果

print

完整语句为:System.out.print();

它的特点是直接输出,不换行且参数不可为空。

println

完整语句为:System.out.println();

它的特点是每次输出后自动换行,当参数为空时相当于输出了一个换行符。

printf

完整语句为:System.out.printf();

printf是格式化输出,与C语言中的printf语句十分相似。

流程控制

  Java的程序结构有顺序、选择以及循环三种,许多语句是与C语言相同的,以下只介绍一些特点或是学习得不太清楚的地方。

if条件语句中输入数据类型的判断

Scanner sc=new Scanner(System.in);  
int num=0;  
if(sc.hasNextInt())  
{  
    num=sc.nextInt();  
}  
System.out.println(num);

上述语句利用扫描器对象sc的方法实现了当输入int类型数值时给num赋值。

跳转语句break与continue

  1. break语句

break语句常用于switch语句,但也可用于循环语句中用于跳出循环。

  break语句用于跳出循环时需要注意的有两点,一是它只能跳出一层循环,二是break语句的位置。
对于一个双重循环:

int num=0;
for(int i=0;i<10;i++){
	for(int j=0;j<10;j++)
	{
		num++;
	}
}
System.out.println(num);//输出结果为100

(1)使用break打断外层循环:

int num=0;
for(int i=0;i<10;i++){
	for(int j=0;j<10;j++){
		num++;
	}break;
}
System.out.println(num);//输出结果为19

(2)使用break打断内层循环:

int num=0;
for(int i=0;i<10;i++){
	for(int j=0;j<10;j++){
		num++;
		break;
	}
}
System.out.println(num);//输出结果为10

(1)与(2)虽然输出结果相同但break的作用并不同。
(1)中break打断外层循环,break语句只执行了一次。
(2)中break打断内层循环,break语句执行了十次。


  1. continue语句

continue用于跳转到下一次循环。特别地,对于do-while语句,continue语句将跳转至条件表达式的判断。

对于一个循环:

int num1=0,num2=0;  
for(int i=0;i<10;i++)  
{  
    num1++;  
    if(num2==5) continue;  
    num2++;  
}  
System.out.println(num1+" "+num2);

输出结果为:
输出结果

我们可以观察到num2的值为5,这是因为当num2为5时continue语句执行,循环直接跳转到了下一次,num2++语句没有被执行。

  • 23
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 23
    评论
评论 23
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

梅八格

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值