Java-基本语法

Java基本语法

一、关键字和保留字

关键字:被Java 语言赋予了特殊含义,用做专门用途的字符串。关键字中所有字母都为小写。

保留字:现有Java版本尚未使用,但以后版本可能会作为关键字使用。命名标识符时要避免使用。(gotoconst

image-20210906110632442 image-20210906110717171

二、标识符

标识符:对各种变量、方法和类等要素命名时使用的字符序列称为标识符(自己起名字的地方)。

命名规则

  • 由字母、数字、下划线(_)、$符号组成

  • 不可以使用关键字和保留字

  • 数字不可以开头

命名规范

  • 包名:多单词组成时所有字母都小写:xxxyyyzzz
  • 类名、接口名:多单词组成时,所有单词的首字母大写:XxxYyyZzz
  • 变量名、方法名:多单词组成时,第一个单词首字母小写,第二个单词开始每个单词首字母大写:xxxYyyZzz
  • 常量名:所有字母都大写。多单词时每个单词用下划线连接:XXX_YYY_ZZZ

三、变量

image-20210906114101288

3.1 整形

类型 占用存储空间 表数范围 备注
byte 1字节 -128 ~ 127
short 2字节 -2^15 ~ 2^15 - 1
int 4字节 -2^31 ~ 2^31 - 1 系统默认,最常使用
long 8字节 -2^63 ~ 2^63 - 1 常量定义时后面加L

3.2 浮点型

类型 占用存储空间 表数范围 备注
float 4字节 -3.403E38 ~ 3.403E38 精确到7位,定义时后面加F
double 8字节 -1.798E308 ~ 1.798E308 精确到14位,系统默认,最常使用

3.3 字符型

用char类型来表示字符,一个char类型数据占两个字节,字符常量用单引号引起来。表示字符可以使用单个字符,如'a';也可以使用转义字符,如'\n';也可以直接使用Unicode值来表示,如'\u000a'

3.4 布尔型

boolean类型,只有两个值:truefalse

3.5 基本数据类型转换

3.5.1 自动类型提升

当容量小的数据类型的变量与容量大的数据类型的变量做运算时,结果自动提升为容量大的数据类型。此时的容量大小指的是,表示数的范围的大和小。比如:float容量要大于long的容量。特别的:当byte、char、short三种类型的变量做运算时,都转化为int型去做运算,结果也为int型。

bytecharshort --> int --> long --> float --> double 

3.5.2 强制类型转换

强制类型转换是自动类型提升的逆运算,需要使用强转符:();强制类型转换可能造成精度损失。

double d1 = 12.9;
//精度损失举例1
int i1 = (int)d1;//截断操作
System.out.println(i1);

//没有精度损失
long l1 = 123;
short s2 = (short)l1;

//精度损失举例2
int i2 = 128;
byte b = (byte)i2;
System.out.println(b);//-128

3.6 String类型(非基本数据类型)

声明String类型变量时,使用一对"",如"abcde"。String可以和8种基本数据类型变量做运算,且运算只能是连接运算:+,运算的结果仍然是String类型。

char c = 'a';//97   A:65
int num = 10;
String str = "hello";
System.out.println(c + num + str); // 107hello

System.out.println('*' + '\t' + '*');// 运算的结果为整形数字

3.7 进制

// 整数的四种表示方式
int num1 = 0b110;	// 二进制,用0b或0B开头
int num2 = 110;		// 十进制
int num3 = 0127;	// 八进制,用0开头
int num4 = 0x110A;	// 十六进制,用0x或0X开头

四、运算符

运算符有算数运算符、赋值运算符、比较运算符、逻辑运算符、位运算符、三元运算符等。不清楚运算符的优先级可以使用()

取模运算符%,运算结果的符号只与被取模的数的符号有关。被取模的数为正,结果为正;被取模的数为负,结果为负。

整数之间做除法时,会只保留整数部分而舍弃小数部分。

// 赋值运算符不会改变变量的数据类型
short s = 10;
s = s + 2;	// 编译不通过
s += 2;		// 可以

i++++;		// 错误写法,自增运算符使用错误

逻辑运算符中,&&&的区别:如果&&左侧表达式能确定最后的计算结果,则右侧部分不再计算,&两侧的表达式都会参与运算。|||同理。

位运算符

运算符 运算 结果
<< 左移 在一定范围内,原数乘2
>> 右移 原数除2,右移时填充符号位
>>> 无符号右移 右移时填充0
& 按位与 按位运算
| 按位或 按位运算
^ 按位异或 按位运算
~ 按位取反 按位运算

五、程序流程控制

从控制台读取数据

// 从控制台读取数据
import java.util.Scanner;

Scanner scan = new Scanner(System.in);
String str = scan.next();
int i = scan.nextInt();
double d = scan.nextDouble();
boolean b = scan.nextBoolean();
// 取得[a, b]区间的随机数
int value = (int)(Math.random() * (b - a + 1) + a);

5.1 选择结构

switch结构中的表达式,只能是byteshortintchar枚举String类型。

5.2 循环结构

// 标签的使用,在需要一次跳出多个 循环时
label:for(int i = 2;i <= 100000;i++){//遍历100000以内的自然数
    for(int j = 2;j <= Math.sqrt(i);j++){//j:被i去除
        if(i % j == 0){ //i被j除尽
            continue label;	// 如果需要打破循环,使用break lable;
        }
    }
    //能执行到此步骤的,都是质数
    count++;
}

增强型for循环

// 增强型for循环
int[] arr = { 1, 2, 3, 4, 5 };
for (int i : arr) {
    System.out.println(i);
}
posted @   ChingFun  阅读(302)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· AI 智能体引爆开源社区「GitHub 热点速览」
· 写一个简单的SQL生成工具
点击右上角即可分享
微信分享提示