java的基础
第二章:java语言基础
本次课目标:
1、输入、输出
2、变量、常量及数据类型
3、运算符
4、条件语句
5、循环语句
6、数组
7、函数
①输入、输出
●Scaner:接收键盘中的数据
用法:
(1)在类前导入包
import java.util.*/Scanner;
(2)创建一个Scanner对象
//System.in :标准输入流,可以取得用户在键盘上输入的值
Scanner sc = new Scanner(System.in);
(3)得到用户输入的字符串或数字
String str = sc.next();//得到一个字符串
int num = sc.nextInt();//得到一个整数
......
②变量、常量及数据类型
●数据类型分为:
(1)简单数据类型(基本数据类型)8个
字符:
char:2个字节
整数
byte:1个字节
short:2个字节
int:4个字节
long:8个字节
小数
float:4个字节
double:8个字节
逻辑值
boolean:true | false
(2)引用数据类型
类、数组、接口(第三章详细讲解)
●变量命名规则
(1)数字,字母,_,$
(2)不能是数字开头
(3)java保留字不能用
●变量命名规范(重点,特别是类名大写):
(1)类名首字母必须大写,后面每个单词首字母大写;(骆驼式命名) 比如:public class StudentInfoManager{}
(2)方法名首字母小写,除第一个单词以外的所有单词首字母大写 比如:public void getStudentList()
●变量声明方式
数据类型 变量名 = 值;
比如:char sex='男';
●常量:固定值之后,不可变的量
final 数据类型 常量名 = 值;
①做全局变量,必须声明时赋值
②做局部常量,可以声明时不用赋值,但是只能赋值一次
③运算符
运算符:(因为c语言学过,询问学生那些都问题,再讲)
算数运算符:
+ - * / %
++ --(强调讲解先后顺序)
逻辑运算符
|| && !(!只对布尔型)
关系运算符:(结果boolean型)
> >= < <= == !=
复合赋值运算符
+= -= *= /= %=
三目运算符语法:
表达式1?表达式2:表达式3
执行流程:
如果表达式1的值为真。则执行表达式2,否则执行表达式3
现场编程:
从键盘接收两个数字,将最大(小)的输出。要求,只能使用三目运算符。
④条件语句
●if、if-else
if(表达式)
{
}
if()
{
}else
{
}
案例:验证密码
●if-else-if
if()
{
}else if()
{
}
...
else{}
重点:将多分支语句讲解
案例:根据你的身高和体重,计算bmi(肥胖指数)=体重(kg)/(身高*身高),标准如下:
体重过轻:bmi < 18.5
正常范围:18.5 <= bim < 24
体重过胖:24 <= bim < 27
轻度肥胖:27 <= bim < 30
中度肥胖:30 <= bim < 35
重度肥胖:35 <= bim
●switch语句
语法:
switch(表达式)
{
case 常量值:
语句;
[break];//可选
...
[default]://可选
语句
}
执行流程:
表达式的类型: 数字(byte,int,short),char
在JDK1.7之后,还可以使用String
判断表达式的值,然后与case做比较,满足执行对应语句
break;不写情况
案例:输入数字,输出今天是星期几
⑤循环语句
●while的语法
while(表达式)
{
}
执行流程:表达式真,执行;假,结束
先判断有执行
案例:计算1+3+5+7+...+95+97+99的值。(用while循环实现)
int sum = 0;
int i = 1;
while(i<100){
sum+=i;
i+=2;
}
●do while的语法:
语法:
do
{
}while(表达式);//分号别忘 了
案例:猜数游戏
执行流程,先执行,后判断
while 和do while区别:
●for的语法:
for(表达式1;表达式2,表达式3)
{
}
总结所有的循环三个要素:
循环变量初始值
循环的条件
循环变量的改变
执行流程
案例:3000米长的绳子,每天减一半。问多少天这个绳子会小于5米?
int day = 0;
for (double a = 3000; a >= 5; a /= 2) {
day++;
}
● while (true)
{
if (egg % 2 == 1 && egg % 3 == 2 && egg % 4 == 3)
{
sysou("最少有" + egg + "个鸡蛋");
break;
}
egg++;
}
案例:有一筐鸡蛋,两个两个的数,多一个,三个三个的数,多两个,四个四个的数多三个,请问最少有多少个鸡蛋?
int egg =0; //设置鸡蛋个数。
●for-each
for(数据类型 变量名:数组或集合){
//直接使用变量名
}
案例:从2000年到2050年之间,列举出闰年的年份。
⑥数组
什么是数组?
具有数据类型相同的有序变量的集合。
特点:数据类型必须相同。而且有序,大小固定。
一维数组:
语法1:
数据类型[] 数组名 = new 数据类型[长度]
或
数据类型 数组名[] = new 数据类型[长度]
初始化
数据类型[] 数组名 = {值,值};//不可拆
数据类型[] 数组名 = new 数据类型[大小] //可拆开写
数据类型[] 数组名 = new 数据类型[]{值,值,...} //可拆开写
案例:
声明一个数组,长度随意,要求,从键盘赋值,并且求出,最大值,最小值,平均值,求和等等
二维数组:
什么是二维数组:行列
定义 3行2列的二维数组,
操作:定义 3行3列的数组,给二维数组赋值
⑦函数
4类函数:
无返回值无参数
无返回值有参数
有返回值无参数
有返回值有参数
函数:
返回值类型 函数名([数据类型 变量名, 数据类型 变量,....])
{
}
给题做,哪些题有问题
案例:输入两个整数,用方法比较这两个数的大小,然后输出结果。
浙公网安备 33010602011771号