之前的基本语法没有实现程序和人的交互,但Java给我们提供了一个工具类Scanner可以用来获取用户的输入。java.util.Scanner是Java5的新特征,我们可以通过Scanner类来获取用户的输入
基本语法
Scanner s = new Scanner(System.in);
通过Scanner类的next()与nextline()方法获取输入的字符串,在读取之前我们一般需要使用hasNext() 与 hasNextLine()判断是否还有输入的数据
next()
nextline()
\\next()应用
import java.util.Scanner;
public class Demo01 {
public static void main(String[] args) {
//创建一个扫描器对象,用于接收键盘数据
Scanner scanner = new Scanner(System.in);
System.out.println("使用next方式接受:");
//判断用户有没有输入字符串
if (scanner.hasNext()){
//接受用户的输入
String str = scanner.next();
System.out.println("输出的内容为:"+str);
}
//凡是属于IO流的类如果不关闭就会一直占用资源,要养成好习惯用完就关掉
scanner.close();
}
}
\\nextline()应用
import java.util.Scanner;
public class Demo02 {
public static void main(String[] args) {
// 从键盘接受数据
Scanner scanner = new Scanner(System.in);
System.out.println("使用NextLine方式接收:");
// 判断是否还有输入
if (scanner.hasNextLine()){
String str = scanner.nextLine();
System.out.println("输出内容为:"+str);
}
scanner.close();
}
}
// 实例
import java.util.Scanner;
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();
// System.out.println("你输入了第"+m+"个数据,当前结果sum="+sum);
m++;
sum = x+sum;// sum+=x;
System.out.println("你输入了第"+m+"个数据,当前结果sum="+sum);
}
System.out.println(m+"个数的总和为:"+sum);
System.out.println(m+"个数的平均值为:"+sum/m);
scanner.close();
}
}
if单选结构
语法:
if(布尔表达式){
// 如果布尔表达式为true执行的语句
}
if双选结构
if多选择结构
if(){
}else if(){
}else if(){
}else {
}
嵌套的if结构
switch多选择结构
while循环
最基本的循环,它的结构为
while(布尔表达式){
//循环内容
}
只要表达式为true,循环就会一种会循环下去
大多数情况下,我们需要一个让表达式失效的方式来结束循环
少部分情况下需要程序一直执行,如服务器的请求响应
do...while循环
对于while循环而言,如果不满足条件,则不能进入循环。但有时候我们需要即使不满足条件也至少执行一次
而do...while 循环与while最大的不同就是至少执行一次
while与do...while区别:
do{
//代码语句
}while(布尔表达式)
for循环
for循环语句是支持迭代的一种通用结构,是最有效、最灵活的循环结构
for循环的执行次数是在执行前确定的,语法格式如下:
for(初始化;布尔表达式;更新){
//代码语句
}
//100.for可以在IDEA中快捷输入for循环
在Java5中引入了一种主要用于数组的增强型for循环
先了解,后面再仔细学习
用于循环数组和集合的
语法格式:
for(声明语句:表达式){
//代码语句
}
public class ForDemo05 {
public static void main(String[] args) {
int [] numbers = {10, 20, 30, 40, 50}; //定义了一个数组
for (int i = 0; i < 5; i++) {
System.out.println(numbers[i]);
}
System.out.println("================");
//遍历数组的元素
for (int x:numbers){
System.out.println(x);
}
}
}
// break在任何循环语句的主体部分,均可用break控制循环的流程
// break用于强行退出循环,不执行循环中剩余的语句(也在switch中使用)
//
// continue 语句在循环语句体中,用于种植某次循环过程,即跳过循环体中尚未执行的语句。接着进行下一次是否执行循环的判定
关于goto关键字
public class TestDemo {
public static void main(String[] args) {
//打印三角形 5行
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=2; j<=i;j++){
System.out.print("*");
}
System.out.println();
}
}
}
原文:https://www.cnblogs.com/rokingrow/p/15011074.html