JAVA语法基础01
1.标识符
1.1标识符的规则
1.组成:字母 A-Z,a-z,0-9, _ ,$
2.注意:不能数字开头,不能是关键字
1.2命名习惯
1.类名:首字母大写,大驼峰,HelloWorld;
2.数据
2.1概述
程序 = 数据 + 逻辑
2.2 数据类型
1.基本数据类型:整数,小数,字符(char),布尔。JAVA语言内置的类型。注意:String是引用数据类型。
2.引用数据类型:数组,类,接口。在基本数据类型基础上创建的。JAVASE提供了一个超级类库,包含了近万种引用数据类型。
2.3 常量
2.4 变量
2.4.1 计算机存储单元
计算机存储设备最小的信息单元比特位 bit
计算机最小的存储单元 是字节
1B = 8bit
1KB = 1024b
1MB = 1024 KB
1GB = 1024 MB
1 TB = 1024 GB
1PB = 1024 TB
2.4.2 基本类型之4类8种
java中默认的整数类型是int
long 类型必须在后面加L, 例 12354365769789L
浮点类型默认类型是 double
float 类型后面加F 例 1.23F
变量定义
数据类型 变量名 = 值;
int a = 100
变量的转换
byte -> short ->int -> long ->float ->float - > double
范围小的可以直接转大的,反之不行,自动转换
double d = 10000;
强制转换
就是范围大的转成小的。注意精度丢失。
int d = (int)3.14;
2.4.3 引用数据类型
java已经存在了,是Sun公司为我们做好的类,存在于开发工具包中
格式:
类型 变量名 = new 类型();
举例: 创建出Scanner类的变量
Scanner sc = new Scanner();
int a = 1;
每个引用类型,都有自己的功能,如何使用功能
公式:
变量.功能名字()
Scanner类,作用,让我在命令行中,接受键盘的输入
使用Scanner类步骤:
1. 导入包,指明类所在的文件夹, 关键字 import
java文件夹-util文件夹
2. 公式,创建出Scanner类型变量
3. 变量.使用Scanner类中的功能,完成键盘输入
import java.util.Scanner;
public class ScannerDemo{
public static void main(String[] args){
// 类型 变量名 = new 类型();
// 创建出Scanner,类变量
Scanner sc = new Scanner(System.in);
//变量.功能名字() 接受键盘输入
// 功能: nextInt() 接受键盘输入,保证输入的是整数
// 功能接受的数据就是整数,功能运行后的结果就是整数类型
int i = sc.nextInt();
System.out.println(i);
//Scanner类的另一个功能 next() 接受键盘输入的字符串
String s = sc.next();
System.out.println(s);
}
}
3.运算符
注意 范围大的类型和范围小的一起运算结果会自动转换成范围大的
3.1 逻辑运算符
3.2 三元运算符
布尔表达式 ? 结果1 : 结果2
流程控制语句
/*
实现猜数字的小游戏
随机数一个数字,让用户猜
结果三种情况:
中了, 大了, 小了
随机数: Random
键盘输入: Scanner
猜的数字,和随机数进行比较 if 判断
直到猜中为止, 反复去猜,循环 while
*/
import java.util.Random;
import java.util.Scanner;
public class GuestNumber{
public static void main(String[] args){
System.out.println("猜数字开始了");
System.out.println("输入1-100之间数据");
//创建Random类变量
Random ran = new Random();
//变量.使用功能nextInt()获取1-100随机数
int ranNumber = ran.nextInt(100)+1;
//System.out.println(ranNumber);
//创建Scanner类变量
Scanner sc = new Scanner(System.in);
while(true){
//获取键盘输入
int number = sc.nextInt();
//随机数和,用户输入的数据,比较
if( number > ranNumber){
System.out.println("猜大了");
}else if (number < ranNumber){
System.out.println("猜小了");
}else{
System.out.println("中了");
break;
}
}
}
}
注意:switch语句中的表达式的数据类型,是有要求的
JDK1.0 - 1.4 数据类型接受 byte short int char
JDK1.5 数据类型接受 byte short int char enum(枚举)
JDK1.7 数据类型接受 byte short int char enum(枚举), String
/*
switch特性: case 穿透性
案例: 星期1-5输出 工作日 , 星期6-7 输出休息日
case 1 case 2... case5 输出结果相同
case 后面的常量,和switch中数据相同 ,没有break,一直向下穿透
case 后面没有break, 程序就会一直向下穿透
*/
public class SwitchDemo_1{
public static void main(String[] args){
int week = 30;
switch(week){
case 1:
case 2:
case 3:
case 4:
case 5:
System.out.println("工作日");
break;
case 6:
case 7:
System.out.println("休息日");
break;
}
}
}