2019暑假Java学习笔记(二)
0709,0710
本篇笔记内容较少较简单,多数语法与C语言相同
基础语法(下)
条件语句、循环语句以及跳转语句、数组的相关操作以及用户输入的操作。
流程控制
常见的:条件语句、循环语句、跳转语句。
if语句
1.语法(与C语言基本相同)
2.注意:条件语句都是利用条件表达式的真或假来决定执行路径,Java里不允许将一个数字作为布尔值使用,虽然这在C和C++里是允许的。
switch语句
1.语法(与C语言基本相同)
switch(表达式){
case 值1:
代码块1
break;
case 值2:
代码块2
break;
default:
默认执行的代码块
}
while语句和do-while语句
1.语法(与C语言基本相同)
do{
代码块
}while(条件);
for语句
1.语法(与C语言基本相同)
break关键字
1.语法(与C语言基本相同)
continue关键字
1.语法(与C语言基本相同)
数组
一维数组
1.声明数组的语法
数据类型[] 数组名;
或者
数据类型 数组名[];
(这种跟C语言基本一样)
数组名为合法的变量名
2.为数组分配空间的语法
数组名 = new 数据类型 [数组长度];
也可以将1和2合并,在声明的同时分配空间。
3.将一个数组赋值给另一个数组
int [] a1 = {1,2,3};
int [] a2;
a2 = a1;
这里只是复制了一个引用,即a2和a1是相同数组的不同名称
4.使用foreach遍历数组
for语句在数组内可以使用特殊简化版本
for(元素类型 元素变量:遍历对象){
执行的代码
}
举例:
public class JudgePrime{
public static void main(String[] args){
int [] ages = {12,18,9,33,45,60};
int i = 1;
for(int age:ages){
System.out.println("数组中第"+i+"个元素是"+age);
i++;
}
}
}
二维数组
1.声明和分配空间的语法
数据类型 [][] 数组名 = new 数据类型[行的个数][列的个数];
或者
数据类型 [][] 数组名;
数组名 = new 数据类型[行的个数][列的个数];
也可以
数据类型 [][] 数组名 = {
{第一行值1,第一行值2,...},
{第二行值1,第二行值2,...},
...
{第n行值1,第n行值2,...}
};
注意除了最后一行外,每行右大括号后都跟一个逗号
用户输入操作
上一篇已经涉及到了。
1.在开头写上:
import java.util.Scanner;
即可以使用java.util包下的Scanner类来获取用户的输入
2.下面是输入多种数据以及控制多组数据输入的方法:
Scanner in = new Scanner(System.in);
//获取用户输入的一行数据 返回为字符串
String s = in.nextLine();
//返回用户输入的int值
int i = in.nextInt();
//循环读取int数据,当输入exit时退出循环
while(!in.hasNext("exit")){
System.out.println(in.nextInt());
}
//关闭输入
in.close();
3.如何输入含空格的一句话
使用Scanner.useDelimiter()方法,可以将分隔符修改为回车或其他符号
Scanner scan = new Scnner(System.in).useDelimiter("\n");
System.out.print("请输入:");
String s = scan.next();
System.out.printf("%s",s);
练习题:用户输入
1.要求:
- 获取用户的输入信息(字符串)
- 当用户输入end时,结束输入并打印用户之前输入的所有信息(输入的信息不超过100个)
2.我的代码:
import java.util.Scanner;
public class InputTest{
public static void main(String[] args){
String [] sen=new String[100];
int i = 0;
Scanner in = new Scanner(System.in);
while(!in.hasNext("end")){
sen[i]=in.nextLine();
i++;
}
in.close();
for(int j=0;j<i;j++){
System.out.println(sen[j]);
}
}
}
参考
感想
学习了Java的一些基础语法,感觉是大部分语法与C语言相同,还有一些与Python相同,如格式化输出的方式,import的用法,数组直接赋值等等。
to be continued
总有一天,我会用高亮的代码段让这里焕然一新!这是我的宣言!