用户交互Scanner与进阶使用
public class Demo01 { public static void main(String[] args) { //创建一个扫描对象,用于接收键盘数据 Scanner scanner = new Scanner(System.in);//new Scanner(System.in) alt+回车 System.out.println("使用next方法接收:"); //判断用户有无输入字符串 if (scanner.hasNext()){ //next会把空格当结束符或分隔符,不能得到带有空格的字符 //使用next方法接收 String str=scanner.next(); System.out.println("输入的内容为:"+str); } scanner.close();//凡是属于IO流(输入输出)的若不关闭会一直占用资源,养成用完关掉好习惯 } }
public class Demo02 { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.println("使用nextLine方法接收:"); if (scanner.hasNextLine()){ //NextLine以回车为结束符,可获得空白 String str = scanner.nextLine(); System.out.println("输入的内容为:"+str); } scanner.close(); } }
public class Demo03 { public static void main(String[] args) { Scanner scanner = new Scanner(System.in);//开始 System.out.println("输入数据:"); String str = scanner.nextLine(); System.out.println("输出的内容为:"+str); scanner.close();//关闭 } }
public class Demo04 { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); //从键盘接收数据 int i=0; float f=0.0f; System.out.println("请输入整数:"); if (scanner.hasNextInt()){ i= scanner.nextInt(); System.out.println("整数数据:"+i); }else { System.out.println("输入的不是整数数据"); } System.out.println("请输入小数:"); if (scanner.hasNextFloat()){ f= scanner.nextFloat(); System.out.println("小数数据:"+f); }else { System.out.println("输入的不是小数数据"); } scanner.close(); } }
public class Demo05 { public static void main(String[] args) { //输入多个数字,并求总和与平均数,每输入一个数字回车确认,通过输入非数字来结束输入并输出执行结果 Scanner scanner = new Scanner(System.in); //和 double sum=0; //计算输入多少数字 int m=0; //通过循环判断是否还有输入,并在里面对每一次进行求和和统计 while(scanner.hasNextDouble()){ double x = scanner.nextDouble(); m=m+1;//m++ sum=sum+x; System.out.println("你输入了第"+m+"个数据,当前结果sum=" + sum); } System.out.println(m+"个数的和为"+sum); System.out.println(m+"个数的平均值是"+(sum)/m); scanner.close(); } }
顺序结构
public class ShunXuDemo { public static void main(String[] args) { System.out.println("hello1"); System.out.println("hello2"); System.out.println("hello3"); System.out.println("hello4"); System.out.println("hello5"); } }
选择结构
if单选择结构
public class IFDemo01 { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.println("请输入一个内容:"); String s = scanner.nextLine(); if (s.equals("Hello")) {//判断字符串是否一致 System.out.println(s); } System.out.println("End"); scanner.close(); } }
if双选择结构
public class IFDemo02 { public static void main(String[] args) { //分数过60及格,不过不及格 Scanner scanner = new Scanner(System.in); System.out.println("请输入成绩:"); int score = scanner.nextInt(); if (score>60){ System.out.println("及格"); } else System.out.println("不及格"); scanner.close(); } }
if多选择结构(if 和else中加else if)
public class IFDemo03 { public static void main(String[] args) { //分数过60及格,不过不及格 Scanner scanner = new Scanner(System.in); System.out.println("请输入成绩:"); int score = scanner.nextInt(); if (score == 100) { System.out.println("恭喜满分"); } else if (score < 100 && score >= 90) {//其中一个else if 检测为真,其他else if和else 跳过执行 System.out.println("A级"); } else if (score < 90 && score >= 80) { System.out.println("B级"); } else if (score < 80 && score >= 70) { System.out.println("C级"); } else if (score < 70 && score >= 60) { System.out.println("D级"); } else if (score < 60 && score >= 0) { System.out.println("不及格"); } else { //1个 if至多一个 else System.out.println("成绩不合法"); } scanner.close(); }}
嵌套的if结构
switch多选择结构
public class SwitchDemo02 { public static void main(String[] args) { String name="征途";//字符本质还是数字 switch (name){ case "盖聂": System.out.println("盖聂"); break;//防穿透 case "征途": System.out.println("征途"); break; default: System.out.println("卫庄"); } } }
查看class文件(字节码)
java文件---class文件---反编译(IDEA)
-
设置按钮--project structure
-
查看class文件所在位置并打开
-
打开java文件所在文件夹
-
将class文件拷入java文件夹
-
IDEA里显示class文件
-
双击查看class文件,右键java文件-split right
-
两者对比
循环结构
while循环
public class WhileDemo01 { public static void main(String[] args) { //输出1-100 int i=0; while(i<100){ i++; System.out.println(i); } }}
public class WhileDemo02 { public static void main(String[] args) { //1+2+3+...+100=? int i=0; int sum=0; while (i<=100){ sum=sum+i; i++; } System.out.println(sum); } }
do while循环
public class DowhileDemo01 { public static void main(String[] args) { int i=0; int sum=0; do {//先执行后判断,至少执行一次 sum=sum+i; i++; }while(i<=100); System.out.println(sum); } }
public class DowhileDemo02 { public static void main(String[] args) { int a=0; while(a<0){ System.out.println(a); a++; } System.out.println("==================="); do { System.out.println(a); a++; }while (a<0); } }