java第一周总结:
学习目标:
将这几天所学的知识弄清楚,弄熟练,将前几天落下的课程补回来
学习内容:
关键字和标识符
常量和变量
数据类型
运算符
分支语句和循环语句
扫描器和随机数
数组
注释
// 单行注释:对一行起作用
/* / 多行注释:能够对多行起作用
/* */ 文档注释:能够生成API文档
关键字和标识符
关键字:
Java中包含一系列用作于特殊用途的英文单词,比如,定义一个类使用:class
;声明一个方法没有返回值类型使用:void
;定义一个软件包使用:package
;所有的英文单词都是小写的;以上这些在Java中都称之为关键字。java中包含的所有关键字如下:
标识符:
Java中除关键字意外,凡是由程序自己命名的元素都称之为标识符;java中可以由程序自己命名的元素包含以下:
- 包名称
- 类名称
- 变量名
- 方法名
标识符命名规范
- 标识符命名必须遵循见名知意
- 尽量使用英文单词(拼音)作为标识符名称
- 标识符严格区分大小写
- 包名称建议全部使用小写英文单词
- 类名称使用驼峰式(大驼峰)写法,首字符大写,如果是多个单词组合而成,每个单词的首字符都大写,中间不能留空格
- 变量名和方法名使用驼峰式(小驼峰)写法,首字符小写,如果由多个单词组合而成,除第一个单词外,其余的每个单词首字符大写
注意事项
- 标识符中不能出现除“_”和“ ” 之 外 的 其 他 任 何 特 殊 符 号 ( " ”之外的其他任何特殊符号(" ”之外的其他任何特殊符号("","_"可以出现在标识符的任意位置)
- 数字只能出现在中间和末尾,不能出现在代码的开头处
- 空格不能出现在标识符之间
- 关键字不能作为标识符名称
- 不要使用JDK中内置的类名称作为标识符名称,可能会导致不可预料的后果
- 不要使用中文作为标识符名称,可能会导致乱码
常量和变量
常量:
常量在Java中一般用于表示某一个特定值,而且该值一旦使用则无法改变,因此称之为常量
变量
编程语言中用于描述数据的最基本的单元称之为变量;变量的定义实际就是在向JVM申请内存空间;变量的定义语法:
数据类型 变量名称 [= 初始值]
根据变量的定义位置不同,称呼也存在区别,Java中的变量分为两种:
-
全局变量
类结构中直接定义的变量称之为全局变量
-
局部变量
除类结构之外,其他任何地方定义的变量都称之为局部变量
数据类型
基本数据类型:
- 整型: byte(字节型) short(短整型) int(整型) long(长整型)
- 浮点型: float(单精度浮点型) double(双精度浮点型)
- 字符型: char
- 布尔类型: boolean
引用数据类型:
- String
- 枚举
- 数组
- 类
- 基本数据类型的封装类型:
-
byte -----> Byte
-
short -----> Short
-
int -----> Integer
-
long -----> Long
-
float -----> Float
-
double -----> Double
-
char -----> Character
-
boolean -----> Boolean
隐式转换(直接转换):
- 小的数据类型转大的数据类型
大的数据类型转小的数据类型是强制转换 - byte < short < int < long < float < double
-
^
-
|
-
char
- 除了boolean类型之外,其余的数据类型之间都可以相互转换
运算符:
- 算术运算符: + - * / %(取余) ++ –
- 逻辑运算符: & | ! ^ 最终结果是布尔类型
- 比较运算符: > < ==(等于) != >= <= 最终结果是布尔类型
- 三目运算符: ? :
- 赋值运算符: += -= *= /=
逻辑运算符:
最终的结果是boolean类型的值
* & :与 一假即假,在运算的过程中,只要有一个值是false,结果就是false
* | :或 一真即真,在运算的过程中,只要有一个值是true,结果就是true
* ! :非 取反,表达式为true,结果是false,表达式为false,结果为true
* ^ :异或 同假异真,结果相同的时候输出false,结果不同的时候输出true
三目运算符: ? :
语法:
表达式 ? 值1 : 值2;
运算过程:
如果表达式的值为true,那么就选择值1,
如果表达式的值为false,就选择值2
分支语句
Java中的分支语句分为两种常见结构:
- if…else…
- switch
if语句
基本语法结构
if(布尔条件表达) {
//条件成立时执行
}else {
//条件不成立时执行
}
switch语句
对于一些固定数据值的判断,Java中提供的switch更加实用
语法:
switch(变量){
case 值1:
//执行体
break;
case 值2:
//执行体
break;
…
default:
//以上所有的值都不满足的情况下执行 类似 else
break;
}
循环语句
- for循环
- while循环
- do…while循环
- forEach
- 递归
扫描器和随机数
扫描器:Scanner
作用:将用户输入到控制台的信息获取到
1、创建扫描器对象
//创建对象的语:类名 对象名 = new 类名(System.in);
//导包
Scanner sc = new Scanner(System.in);
//2、提示性语句,输出语句,告诉用户输入什么信息
System.out.println("请输入你的名字:");
//3、创建一个变量,用来接收用户输入的值
String name = sc.next();
//4、对程序的结果进行处理
System.out.println("name = " + name);
byte a1 = sc.nextByte();
short a2 = sc.nextShort();
int a3 = sc.nextInt();
long a4 = sc.nextLong();
float a5 = sc.nextFloat();
double a6 = sc.nextDouble();
boolean a7 = sc.nextBoolean();
String a8 = sc.next();
//八种基本数据类型中,除了char类型无法获取之外,其余的数据
//类型的变量都可以通过扫描器获取到
//常用的是int double String
随机数
随机数:
- Math.random():数学类提供的方法
- Random:随机数类
public class Random_Demo_01 {
public static void main(String[] args) {
/*
* Math.random()
*/
//1、默认生成0 - 1之间的小数,包含0但是不包含1
double a1 = Math.random();
System.out.println("a1 = " + a1);
//2、生成0 - 100之间的小数
double a2 = Math.random() * 100;
System.out.println("a2 = " + a2);
//3、生成0 - 100之间的整数
int a3 = (int) (Math.random() * 100);
System.out.println("a3 = " + a3);
//4、生成25 ~ 80之间的整数
int a4 = 25 + (int)(Math.random() * (80 - 25 + 1));
System.out.println("a4 = " + a4);
/*
* Random类
*/
Random r = new Random();
//生成0 - 1之间的小数
double b1 = r.nextDouble();
System.out.println("b1 = " + b1);
//获取int范围内的数
int b2 = r.nextInt();
System.out.println("b2 = " + b2);
//0 - 100之间的整数
int b3 = r.nextInt(100);//最大值
System.out.println("b3 = " + b3);
}
}
数组
数组:
具有相同数据类型的元素的集合
开辟连续的内存空间
定义方式:
动态初始化:
数据类型[] 数组名 = new 数据类型[元素个数];
静态初始化:
数据类型[] 数组名 = {元素1,元素2,元素3…};
数组下标:
在数组中,为了标识每一个元素,给每一个元素进行标号,叫数组下标
数组下标是从0开始的,到数组长度 - 1结束
package com.softeem.arr;
import java.util.Arrays;
import java.util.Random;
/**
* 1、定义一个int类型的数组,其中包含20个元素
* 2、使用随机数,对数组进行赋值
* 3、将数组中的所有的值相加将和输出
*/
public class Arr_03 {
public static void main(String[] args) {
//定义数组:
int[] arr = new int[20];
Random r = new Random();
//赋值:
for(int i = 0; i < arr.length; i++) {
//产生一个随机数,赋值给数组中的元素
arr[i] = r.nextInt(20);
}
//将数组中的元素输出
System.out.println(Arrays.toString(arr));
int sum = 0;//定义一个变量用来存和
for(int i = 0; i < arr.length; i++) {
sum += arr[i];
}
System.out.println("数组中的元素累加和是:" + sum);
}
}