Scanner
接受键盘数据new一个新对象 Scanner scanner = new Scanner(System.in);
//判断用户有没有输入字符串,以非字符结束。 scanner.hasNext(); //使用next接受 String str = scanner.next(); //判断是否还有输入,以回车为结束 scanner.hasNextLine() //使用nextlin接受 String str = scanner.nextLine(); //凡是属于IO流的类如果不关闭会一直占用资源,要养成好习惯用完就关闭 scanner.close();
小练习:输入若干个数,求输入数的总和,平均值,每输入一个数字用回车确定,通过输入非数字赖结束输入并输出结果
package com.Austin.scanner; import java.util.Scanner; public class Demo4 { public static void main(String[] args) { //我们可以输入多个数字,并求其总和与平均数,每输入一个数字用回车确定,通过输入非数字赖结束输入并输出结果 Scanner scanner = new Scanner(System.in); //总和 double sum = 0; //计算输入多少个数字 int m =0; //通过循环判断是否有输入,并在里面对每一次进行求和统计 while (scanner.hasNextDouble()) { //接收数赋值给X double x = scanner.nextDouble(); m = m+1;//m++ //求和 sum = sum +x; System.out.println("您输入的第"+m+"个数,当前总和为"+sum); } System.out.println(m+"个数的总和为"+sum); System.out.println(m+"个数的平均值为"+sum/m); scanner.close(); } }
三种结构:顺序,选择,循环
打印一个99乘法表
//打印99乘法表 /* 1*1=1 1*2=2 2*2=4 1*3=3 2*3=6 3*3=9 1*4=4 2*4=8 3*4=12 4*4=16 1*5=5 2*5=10 3*5=15 4*5=20 5*5=25 1*6=6 2*6=12 3*6=18 4*6=24 5*6=30 6*6=36 1*7=7 2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49 1*8=8 2*8=16 3*8=24 4*8=32 5*8=40 6*8=48 7*8=56 8*8=64 1*9=9 2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72 9*9=81 */ public class Dome99 { public static void main(String[] args) { for (int i = 1; i <= 9; i++) { for (int j = 1; j <= i; j++) { //1到9,每一行变的是j,不变的是i System.out.print(j+"*"+i+"="+(j*i)+"\t"); } //换行 System.out.println(); } } }
打印一个三角形
public class TestDemo { public static void main(String[] args) { //打印一个三角形e //打印五行 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(); } } }