Java基础知识篇(第一篇)

public class Class_1 {
    public static void main(String[]args) {
        //主函数
        char one='一';//定义一个变量为char型并赋值为:一 char(字符型用于存储单个字符,如'男','女'等单个字符)
        String two="两本";//定义一个变量为String型并赋值为:两本 String(字符串型用于存储一串字符,如"今天天气不错呢!"等)
        double fore=1.2;//定义一个变量为double型并赋值为:1.2 double(双精度浮点型用于存储带有小数的数字,如:1.02,2.336等)
        int three=3;//定义变量three为int型并赋值为:3 int(整型用于存储整数,如1,2,3,12,56等)
        System.out.println("java是一门强类型语言,需要严格的编写过程");//输出语句,输出我们所需要的结果。
        System.out.println("我有"+one+"本Java,和"+two+"C语言以及"+three+"本Mysql。");
    /*
     * 自动数据转换:简单说就是将一个小空间变量的值赋给另个大空间变量如:
     * int a=18;
     * double b=a;
     * double b=18;
     * 强制数据转换:与自动数据转换相反。大传小会损耗精确度
     * double c=29.888;
     * int d=(int)c;
     * int d=29;

数据类型:

int 整型占4个字节

double双精度浮点型占8字节

String字符串型占32字节

char字符型占2字节

变量:

定义:

会变的量,在计算机里是一个数据存储空间,不同的变量互不影响。

声明一个变量的整体步骤如下:

1.确定变量类型

2.确定变量名

3.确定变量值

语法格式:

格式一:数据类型(确定变量类型) 变量名 (确定变量名);

变量名=值(给变量一个默认值);

格式二:数据类型 变量名=值;

使用方法:

看上面代码1-1-1

输入语句:

使用步骤:

1.在Java源代码类上面引入Scanner类,写法如下:

import java.util.Scanner;

2.在类里面实例化Scanner类,写法如下:

Scanner input =new Scanner(System.in);

3.调用next()nextInt()方法接收用户键盘输入的内容,然后赋值给变量,其中next()方法接收用户输入的字符串,nextInt()方法则是接收用户输入的整型数据。写法如下:

int one=input.nextInt();
​
String two=input.next();

流程控制语句

if基本选择结构:

语法结构: if(条件){

代码块//条件成立后要执行的代码,可以是一条语句,也可以是一组语句

} 案例如下:

if(1>0){
System.ou.println("正确");
}

if-esle选择结构:

语法结构:

if(条件){

代码块

}else{

代码块

}

案例如下:

int score1=100;
int score2=78;
if((score1>97&&score2>85)||(score1==100&&score2>75)){
   System.out.println("可以");
}else{
    System.out.println("不行");
}

多重if选择结构:

语法结构:

if(条件1){

代码块1}else if(条件2){

代码块2

}else{

代码块3

}

注意:else块最多有一个或没有,else块必须放在else if块之后。

else if 块可以有多个或没有,需要几个else if块完全取决于需要。

案例如下:

if(score>=80){
//分数高于80
System.out.println("良好");
​
}else if(score>=60){
//分数大于60
System.out.println("中等");
​
}else{
//分数小于60
System.out.println("差");
​
}
​

嵌套if选择结构:

语法结构:

if(条件1){

if (条件2){

代码块1

}else

代码块2

}else

代码块3

}

注意:只有当满足外层if选择结构的条件时,才会判断内层if的条件。

else总是与它前面最近的那个缺少else的if配对。

案例如下:

if(score<=10){
if(gender.equals("男")){
System.out.println("进入男子决赛组!");
}else if(gender.equals("女")){
System.out.println("进入女子决赛组!");
}
}else{
    System.out.println("淘汰!");
}

switch选择结构

优点:

可以更好的解决等值判断问题

语法格式:

switch(表达式){

case 常量1:

//代码块1;

break;

case 常量2:

//代码块2;

break;

......

default:

//代码块n;

break;

}

案例如下:

int mingCi=1;
input.mingCi=new inpuit
swicth(mingCi){
    case 1;
    System.out.println("参加麻省理工大学组织的一个月夏令营");
    break;
    case 2;
    System.out.priintln("奖励惠普笔记本电脑一部");
    break;
    case 3;
    System.out.println("奖励移动硬盘一个");
    break;
    default:System.out.println("没有任何奖励!");
    break;
}
 

注意:以上switch、case、default、break都是Java关键字。

switch:表示"开关",开关就是switch关键字后面小括号里的值,小括号里要放一个整型变量(表达式)或字符型变量(表达式)。

case:表示情况,case后必须是一个整型或字符型的常量,通常为一个固定的字符,数字,如8、'a'等。case块可以有多个,顺序可以改变,但是每个case 后常量的值必须各不相同。

default:表示默认,其他情况都不满足。default后要紧跟冒号。default块和case块的先后顺序可以变动,不会影响程序的执行结果,通常default块放在末尾,也可以省略。

break:表示停止,即跳出当前结构。不可省略break。省略break后,当某个case后的常量值与switch后小括号中的值相匹配时,执行该case的代码,后面的case就不再进行条件判断,而直接进行后面所有case块中的代码,直到遇见break结束。

循环结构:

while循环结构:

语法结构:

while(循环条件:是一个表达式,它的值为boolean类型,即true或false,如:i>=100){

循环操作又叫循环体

}

执行顺序:

先声明并初始化循环变量。再判断循环条件是否满足,如果满足则执行循环操作,否则退出循环。然后执行完循环操作后,再次判断循环条件,决定继续执行循环或退出。

while特点:

第一次判断循环条件就不满足的话,就会直接跳出循环,循环操作一遍都不会执行。这就是while循环的特点:先判断后执行!

案例如下:

int count=1;//定义声明
while(count<=50){//先判断
    System.out.println("打印第"+count+"份试卷");//再执行
    count++;
}

使用while循环结构解决问题的步骤如下:

1.分析循环条件和循环操作

2.套用while语法写出代码

3.检查循环能否退出,避免出现死循环。

do-while循环结构:

do-while特点:

无论如何循环都先执行一次,再判断条件,决定是否继续执行。

do-while语法:

do{

循环操作

}while(循环条件);

案例如下:

int i=1;
do{
System.out.println("好好学习");
i=i+1;
}while(i<=100);

do-while循环执行顺序一般如下:

声明并初始化循环变量,执行一遍循环操作,判断循环条件,如果循环条件满足,则循环继续执行,否则退出循环。检查循环能否退出,防止死循环。

拓展:跳转语句

break:在循环结构中,break 语句用于终止某个循环,使程序跳到循环体外的下一条语句,在循环中位于break后的语句不再执行,循环终止。break语句不仅可以用在while和dou-while循环结构中,也可也用再for循环中break语句通常与if条件语句一起使用。

continue:

在执行循环的时候,可能遇到在循环中,不执行完所有的循环体,就跳出本次循环进入下一次循环,而continue语句就是用于跳出本次循环,进入下一次循环的语句。

for循环:

使用情形:

在解决有固定循环次数的问题时,可首选for循环结构。

循环结构的四部分:

初始部分,循环条件,循环体,迭代部分。

语法格式:

for(表达式1;表达式2;表达式3){

//循环体

}

表达式1:一般为赋值语句,功能是为循环变量赋初始值;如:int i=0;

表达式2:一般为条件语句,循环结构的循环条件。如:i<100;

表达式3:一般为赋值语句,通常用++或--运算符,循环结构的迭代部分,通常用来修改循环变量。如:i++;

执行结构顺序:

1.执行初始部分

2.进行循环条件判断

3.根据循环条件判断结果,如果为true,执行循环体,为false退出循环后面不再执行

4.执行迭代部分,改变循环变量值

5.依次重复步骤2-4,直到退出for循环.

案例如下:

//循环输入某同学结业考试的5门课的成绩,并计算平均分。
//1.明确循环条件和循环操作,这里的循环条件是“循环次数不足5次,继续执行”,循环操作是“录入成绩,并计算成绩之和。”2.套用for语法写出代码3.检查循环是否能够退出。
public static void main(String []args){
    int score;//每门成绩
    int sum;//成绩之和
    double avg;//平均分
    Scanner input=new Scanner(System.in);
    System.out.println("学生姓名:");
        String name=input.next();
    for(int i=0;i<5;i++){
System.out.println("请输入5门功课中第"+(i+1)+"门课的成绩:");
        score=input.nextInt();//录入成绩
        sum=sum+score;//计算成绩和 
    }
avg=(double)sum/5;
    System.out.println(name+"的平均分是:"+avg);
}

案例分析:

1."int i=0;"是初始部分,声明循环变量i,用来记录循环次数。

2."i<5"是循环条件。

3."i++"是迭代部分,更新循环变量的值。

4.循环体为"录入成绩,并累加求和"

总结:for循环中各部分的执行顺序,会发现表达式1只执行一次,表达式2和3可执行多次,循环体可能执行多次,也可能一次不执行。

for循环注意事项:

for循环中的三个表达式都可省略,但是其后的分号不可省略。如果省略,要注意保证循环能够正常进行。

1.省略“表达式1”

for(;i<10;i++);

这种情况需要在for循环语句前给循环变量赋值,如下:

int i=0;

for(;i<10;i++)

2.省略“表达式2”

for(int i=0;;i++);

这种情况是添加表达式2,或者是在循环体中使用break强制跳出循环结构。否则将会变成死循环,不判断条件,循环将无终止。

3.省略“表达式3”

for(int i=0;i<10; )

这种情况是即不改变循环变量的值,也会出现“死循环”,修改方法就是在循环体中加入循环变量i++;这样就可正常运行。

4.省略三个表达式

for(;;)

语法无错,逻辑不通,参考上面三种修改方法即可。

循环语句总结及区别:

1.语法不同

while(条件){

//循环体

}

do{

循环体

}while(条件);

for(初始化;判断条件 ;迭代){

//循环体

}

2.执行顺序不同:

while循环结构:先进行条件判断,再执行循环体,如果条件不成立,退出循环。

do-while循环结构:先执行循环体,再进行条件判断,循环体至少执行一次。

for循环结构:先执行初始化部分,再判断条件,然后执行循环体,最后进行迭代部分的计算,如果条件不成立,跳出循环。

3.使用情况不同:

在面对 的问题是,循环次数确定的情况下时一般采用for循环,对于循环次数不确定的情况下,通常用while和do-while循环结构。

拓展:多重循环的使用

二重循环:

简单说二重循环是循环体内又包含了另一个完整的循环结构,前面学到的三种循环结构可以互相嵌套,即一个循环要完整的包括另一个循环结构。以下四种是合法的嵌套结构:

//while与while
while(循环条件1){
    //循环操作1
    while(循环条件2){
    //循环操作2 
    }
}
//do-while与do-while
do{
    //循环操作1
    do{
        //循环操作2
    }while(循环条件1);
}while(循环条件2);
//for与for
for(循环条件1){
    //循环操作1
    for(循环条件2){
        //循环操作2
    }
}
//while与for
while(循环条件1){
    //循环操作1
    for(循环条件2){
        //循环操作2
    }
}

注意:上面的四种形式中,循环条件1和循环操作1对应外层循环,循环条件2和循环操作2对应的循环为内层循环。内层循环结束后才会执行外层循环的语句,在二重循环中,外层循环变量变换一次,内层循环就要从开始到结束执行一遍。break:结束内层循环,外层循环不受影响,continue:结束内层循环的本次,执行内层循环的下次循环。

案例如下:

//利用二重循环解决计算3个班级平均分问题
//第一个班的成绩:60,85,96,65平均分:76.5
//第二个班的成绩:88,74,76,84平均分:80.5
//第三个班的成绩:66,78,89,79平均分:78.0
​
​
import java .util.Scanner
public static void mai(String[]args){
int[]score=new int[4];
int classNum=3;
double average=0.0;
//循环输入的学员成绩
Scanner input =new Scanner(System.in);
for(int i=0;i<classNum;i++){
sum=0.0;
System.out.println("请输入"+(i+1)+"个班级的成绩");
for(int j=0;j<score.length;j++){
System.out.println("第"+(j+1)+"个学员的成绩:");
score[j]=input.nextInt();
sum=sum+score[j];
}
average=sum/score.length;//计算平均分
System.out.println("第"+(i+1)+"个班级参赛学员的平均分是:"+average+"\n");
​
​
}
​
​
}

关于二重循环简单打印图案:

public static void main(String[]args){
System.out.println("打印矩形");
   for(int i=0;i<5;i++)
​
​
}

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值