java基础第三部分
Scanner类用法
作用:可接受屏幕输入的字符并输出。
测试
.使用next输出
public class Demo01 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("使用next方式接收:");
//判断用户有没有输入字符串
if(scanner.hasNext()){
//使用next方式接收
String str = scanner.next();
System.out.println("输出的内容为:"+str);
}
scanner.close();
}
}
.使用nextLine输出
public class Demo01 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("使用next方式接收:");
//判断用户有没有输入字符串
if(scanner.hasNextLine()){
//使用next方式接收
String str = scanner.nextLine();
System.out.println("输出的内容为:"+str);
}
scanner.close();
}
}
总结
java流程控制结构
顺序结构
程序是从上往下,从左往右执行
选择结构
if选择结构
1.单选择结构
if(条件){
执行语句1
}
2.双选择结构
if(条件){
执行语句1
}else{
执行语句2
}
3.多选择结构
if(条件){
执行语句1
}else if(条件){
执行语句2
}else{
执行语句3
`}``
switch选择结构
switch(数据类型){
case 结果1:
执行语句
break;
case 结果1:
执行语句
break;
…
default:
执行语句
break;
}
注意:
1.expression是一个表达式,它的值必须是byte、short、int、char、String(jdk1.7)、enum,同时expression类型必须与value的类型相匹配。
2.break语句是可选项,计算expression的值与case的值进行匹配,若匹配,则执行case子句后面的语句,直到遇到break语句为止;
若都不匹配,则执行default语句块;若既都不匹配又没有default语句,则直接跳出switch结构。
循环结构
while循环
语句格式:
while(判断条件语句) {
循环体语句;
控制条件语句;
}
public class Demo04 {
public static void main(String[] args) {
int i = 0;
int sum = 0;
//计算1-100的和
while (i<100){
i++;
sum = sum+i;
}
System.out.println(sum);
}
}
do-while循环
与while循环的区别是,do-while至少执行一次循环体
public class Demo04 {
public static void main(String[] args) {
int i = 0;
int sum = 0;
//计算1-100的和
do {
i++;
sum = sum+i;
}while (i<100);
System.out.println(sum);
}
}
for循环
for循环执行的次数是在执行前就确定的。语法格式如下:
for ( 1初始化; 2布尔表达式; 4更新){
代码语句
}
public class Demo05 {
public static void main(String[] args) {
//初始化,条件判断,迭代
for (int i = 1; i <= 9; i++) {
//9*9乘法表
for (int j = 1; j <= i; j++) {
System.out.print(i+"*"+j+"="+i*j+"\t");
}
System.out.println( );
}
/* //死循环
for (; ; ) {
}*/
}
}
java还提供了增强for循环,语法格式如下:
for(声明语句:表达式){
//代码句子
}
public class Demo06 {
public static void main(String[] args) {
int[] numbers = {
21,36,96,86,75};
//普通
for (int i = 0; i < numbers.length; i++) {
System.out.println(numbers[i]);
}
System.out.println("==================");
//增强
for (int number : numbers) {
System.out.println(number);
}
}
}
break
break在循环中的作用是 跳出一个循环或者结束一个循环
public class Demo07 {
public static void main(String[] args) {
for (int i = 0; i < 30; i++) {
System.out.println(i);
if (i == 15) {
break;
}
}
}
}
continue
continue时立即结束本次循环,继续执行下一次循环
public class Demo07 {
public static void main(String[] args) {
for (int i = 0; i < 20; i++) {
if (i == 15) {
continue;
}
System.out.println(i);
}
}
}
goto
作用:用标签给循环起了个名字。而后在循环中使用 break 或者 continue 语句的时候,就可以带上这个标签做为参数,指明跳出 (break) 或者继续(continue) 标签对应的哪个循环,如“break mylabel;”、“continue mylabel;”。
public class Demo08 {
public static void main(String[] args) {
//求10-20之间的素数
outer: for (int i = 10; i <=20; i++) {
for (int j = 2; j < Math.sqrt(i); j++) {
if(i%j==0){
continue outer;
}
}
System.out.println(i+"\t");
}
}
}
打印三角形
public class Demo09 {
public static void main(String[] args) {
for (int i = 1; i <= 5; i++) {
for (int j = 5; j >= i; j--) {
System.out.print(" ");
}
for (int j = 1; j <= i; j++) {
System.out.print("*");
}
for (int j = 1; j < i; j++) {
System.out.print("*");
}
System.out.println();
}
}
}