Java基础语法3
javadoc命令是用于生成自己的API文档的。
JavaDoc是一种将注释生成HTML文档的技术,生成的HTML文档类似于Java的API,易读且清晰明了。
加在类上面就是类的注释,加在方法上面就是方法的注释。
参数信息
@author 作者名
@version 版本号
@since 指明需要最早使用的jdk版本
@param 参数名
@return 返回值情况
@throws 异常抛出情况
生产API文档cmd命令 javadoc -encoding UTF-8 -charset UTF-8
(-encoding UTF-8 -charset UTF-8是为了让文档网页的中文显示更准确)
-encoding utf-8 是文件编码,就是以utf-8编码读取文件和生成javadoc;
-charset utf-8 是生成的javadoc的编码。
用户交互Scanner
System.in输入,System.out输出。
通过Scanner类的next()与nextLine()方法获取输入的字符串,在读取前我们一般需要使用hasNext()与hasNextline()判断是否还有输入的数据。
凡是IO流的类如果不关闭会一直占用资源,要养成号习惯用完就关掉。(io就是输入输出)
scanner.close();
next():
1.一定要读取有效的字符后才可以结束输入。
2.对输入有效字符之前遇到的空白,next()方法都会自动去掉。
3.只有输入有效字符后才能将后面的空白作为分隔符或者结束符。
4.next()方法不能带有空白的字符串。
nextLine():
1.以Enter为结束符,也就是说输入回车前的所有字符。
顺序结构
JAVA的基础结构就是顺序结构,除非特别指明,否则就按照顺序一句一句执行。
顺序结构是最简单的算法结构。
/**
* Sequence是顺序的意思
* 顺序结构,如以下代码一句一句执行,顺序结构也是最简单的算法结构
*/
public static void main(String[] args) {
System.out.println("one");
System.out.println("two");
System.out.println("three");
System.out.println("four");
}
选择结构
if语句
if单选择结构
语法:
if(布尔表达式){
//如果布尔表达式为true将执行的语句
}
equals:判断字符串是否相等
if双选择结构
语法:
if(布尔表达式){
//如果布尔表达式为true将执行的语句
}else{
//如果布尔表达式为false将执行的语句
}
if多选择结构
语法:
if(布尔表达式){
//如果布尔表达式为true将执行的语句
}else if(布尔表达式2){
//如果布尔表达式2为true将执行的语句
}else {
//如果以上布尔表达式都不为ture,那么执行这条代码
}
嵌套的if语句(if语句里面还有if语句)
语法:
if(布尔表达式){
//如果布尔表达式为true将执行的语句
if(布尔表达式{
//如果布尔表达式2为true将执行的语句
}
}
switch多选择结构
switch语句中的变量类型可以是:byte,short,int或者char。
从javaSE 7开始,switch支持字符串String类型了。
同时case标签必须为字符串常量或字面量。
语法:
switch(表达式){
case a:…;
break;
case b:…;
break;
/*
其他代码
*/
default:
....
//以上都不是的话就执行这条
;
}
public static void main(String[]args) {
Scanner scanner=new Scanner(System.in);
System.out.println("请输入该同学的成绩等级大写A,B,C,D,E");
char a=scanner.next().charAt(0);
switch (a) {
case 'A':
System.out.println("优秀");
break;
case 'B':
System.out.println("良好");
break;
case'C':
System.out.println("及格");
break;
case'D':
System.out.println("你这成绩有点难尽");
break;
case'E':
System.out.println("回炉重造");
break;
default:
System.out.println("你输入的是什么玩意");
scanner.close();
}
}
while循环
while是最基础的循环,只有布尔表达式为true,就会一直循环下去。
我们只需要执行表达式生效的方式来结束循环;
结构为:
while(布尔表达式){
//循环内容
}
Dowhile循环
对于while语句而言,如果不满足条件,则不能进入循环,但是有时候我们需要即使不满足条件,也要至少执行一次。
do…while循环和while循环相似,但是do…while循环至少会执行一次
语法为:
do{
//代码语句
}while(布尔表达式);
For循环
for循环语句是最有效最灵活的循环结构
格式:
for(初始化;布尔表达式;更新){
//代码语句
}
增强For循环
Java引用了一种主要用于数组或集合的增强型For循环
声明对象:声明新的局部变量,该变量的类型必须和数组元素的类型匹配。其作用域限定在循环语句块,其值与此时数组元素的值相等。
表达式:表达式是要访问的数组名,或者是返回值为数组的方法.
格式:
for(声明语句:表达式)
{
//代码句子
}
例子:
public static void main(String[]args) {
int[] numbers = {10, 20, 30, 40, 50};
for(int i=0;i<5;i++){
System.out.print(numbers[i]+"\t");
}
System.out.println();
System.out.println("======上面为普通的for循环,下面为增强的for循环=========");
for(int x:numbers){ //增强的for循环
System.out.print(x+"\t");
}
}
break continue
◆break在任何循环语句的主体部分,均可用break控制循环的流程。break用于强行退出循环,
不执行循环中剩余的语句。(break语句也在switch语句中使用)。
◆continue语句用在循环语句体中,用于终止某次循环过程,即跳过循环体中尚未执行的语句,
接着进行下一次是否执行循环的判定。
//break在任何循环语句的主体部分,均可用那reak控制循环的流程。
//1break,用于强行退出循环,不执行循环中剩余的语句。(break语句也在switch语句中使用)
//continu语句用在循环语句体中,用于终止某次循环过程,即跳过循环体中尚未执行的语句,接着进行下一次是否执行循环的判定。
例子:
public static void main(String[] args) {
int i=0;
int a=0;
while(i<100){
i++;
System.out.print(i+"\t");
if(i==10){
break; //break会终止在内的所有循环;
}
}
System.out.println();
System.out.println("============下面是continue语句=================================");
while(a<15){
a++;
if(a%10==0){
continue; //只会a=10的时候终止输出,不会影响后面输出
}
System.out.print(a+"\t");
}
}
关于goto关键字
◆goto关键字很早就在程序设计语言中出现。尽管goto仍是java的一个保留字,但并未在语言中得到正式使用:Java没有goto,然而,在break和continuei这两个关键字的身上,我们仍然能看出一些goto的影子.-带标签的break和continue.
◆“标签”是指后面跟一个冒号的标识符,例如:label:
java来说唯一用到标签的地方是在循环语句之前。而在循环之前设置标签的准一理由是:我们希望在其中嵌套另个循环,由于breaki和continue:关键字通常只中断当前循环,但若随同标签使用,它们就会中断到存在标签的地方。
public static void main(String[]args){
//打印101-150之间所有的质数
//质数是指在大于1的自然数中,除了1和它本身以外不再有其他因数的自然数。
int count=0;
outer:for (int i=101;i<150;i++) //outer是标签,outer不是关键字,只是标签
for (int j=2;j<i/2;j++){
if(i%j=8){
continue outer;
System.out.print(i+"")