Java编程基础阶段笔记 day02 Java基本语法(上)

简介: ​Java基本语法(上)内容大纲关键字和保留字标识符Java命名规范变量概念变量分类变量范围基本数据类型转换基本数据类型与String运算变量部分练习进制及其转换原码、反码、补码进制转换进制转换练习算术运算符关键字与保留字关键字定义:Java语言中定义的具有特殊意义、用途的单词关键字特点...


Java基本语法(上)

内容大纲

关键字和保留字
标识符
Java命名规范
变量概念
变量分类
变量范围
基本数据类型转换
基本数据类型与String运算
变量部分练习
进制及其转换
原码、反码、补码
进制转换
进制转换练习
算术运算符

关键字与保留字

关键字定义:Java语言中定义的具有特殊意义、用途的单词

关键字特点:关键字所有字母小写

保留字定义:以后可能当作关键字,现在还未使用

标识符

可以自己取名的地方叫标识符

注意:

①26个字母大小写、0-9、$、_组成

②数字不可以作为开头

③不能是标识符、长度不限、不含空格

Java命名规范

包名:多单词组成都小写 william.com

类名、接口名:多单词首字母大写 class TestDemo

变量名、方法名:首字母小写,从第二个单词首字母大写 testDemoFunction

常量名:所有单词大写,多单词连接用下划线 TEST_NUM

变量

①放在内存中存储②有范围③程序存储单元,存放数据

变量声明格式:变量类型 变量名 = 变量值 int number = 0;

变量必须先声明再使用,且不能重复

变量的作用域:{}内声明赋值的变量只在该作用域发挥作用

变量分类

按数据类型分类

按声明位置分类

      ①类内,方法外声明:成员变量

②方法体内部:局部变量

变量范围

整数类型:byte(1字节=8bit) -128~127 | short(2字节)| int(4字节)| long(8字节)

①long num=123445678L; 后面加 “L”

②double num=0.11;

③float num=0.11F; 后面加 “F”

字符类型:char(2字节) 字符

①Java中采用 Unicode编码,可存储一个字母、汉字、其他语言一个字符

② char c1 = 'a'; char c2 = '中'; char c3 = '9';

③ 可存储转义字符,如 char c4='u000a'; (16进制)表示 n

基础数据类型转换

自动类型提升:

①byte,short,char->int->long->float->double(小容量自动转换换成大容量,容量为表数范围)

②多类型数据混合运算,将数据类型转换成最大的再进行运算

int a=10;

long b=1000L;

long c=a+b;

③byte,short,char运算时转换成int类型运算

强制类型转换:

①大容量放到小容量 ②使用强制转换符③boolean不能强制类型转换

④byte,short,char之间做运算会先将自身提升成int类型

int b=1;

int a=1;

byte c=(byte)b + (byte)a; //编译不通过,byte类型运算时会自动转为int类型

正确写法:byte c = byte(b+a);

基本数据类型与String类型运算

String s = "hello"; String s2 = new String("hello2");

String类型与其他类型相加都转为String类型

Java的整型常量默认为int类型,Java的浮点类型默认为double类型

变量部分练习

进制

二进制(binary):0,1 ,满2进1.以0b或0B开头。

十进制(decimal):0-9 ,满10进1。

八进制(octal):0-7 ,满8进1. 以数字0开头表示。

十六进制(hex):0-9及A-F,满16进1. 以0x或0X开头表示。

010 0b10 0x10 10

原码、反码、补码(二进制整数)

原码:直接将一个数值换成二进制数。最高位是符号位

负数的反码:是对原码按位取反,只是最高位(符号位)确定为1。

负数的补码:其反码加1。

①计算机以二进制补码的形式保存所有的整数。

②正数的原码、反码、补码都相同

③负数的补码是其反码+1

进制转换

十进制->二进制: 除2取余的逆 如13转换:连除2余数分别为1、0、1、1;逆序为1101

二进制->十进制 乘以2的幂数

二进制 八进制互转

二进制 十六进制互转

十进制 八进制互转:先转成二进制

十进制 十六进制互转:先转成二进制

进制练习

算术运算符

① 取模结果的正负和被模数的正负有关

System.out.println( 4 % -3); // 1

    System.out.println(-4 %   3);   //-1

    System.out.println(-4 % -3);   //-1

② 整数之间做除法只保留整数部分

③ 计算机中运算顺序不同可能会导致不同结果

n2 = 10 / 4 * 4;//8.0    

n2 = 10 * 4 / 4;    //10.0

练习

随意给出一个整数,打印显示它的个位数,十位数,百位数的值。格式如下:

数字xxx的情况如下:

个位数:

十位数:

百位数:

目录
相关文章
|
2天前
|
Java 开发者
【Java编程新纪元】JDK 22:超级构造函数来袭,super(...) 前导语句改写编程规则!
【9月更文挑战第6天】JDK 22的超级构造函数特性是Java编程语言发展史上的一个重要里程碑。它不仅简化了代码编写,还提升了代码的可读性和维护性。我们有理由相信,在未来的Java版本中,还将有更多令人兴奋的新特性等待我们去发现和应用。让我们共同期待Java编程新纪元的到来!
|
1天前
|
存储 Java 容器
Java 基础语法
Java是一种面向对象的编程语言,其基础语法包括类和对象、方法、变量、控制流语句、继承和多态以及异常处理。代码需写在类中,`main()`方法是程序入口,变量用于存储数据,控制流语句控制程序执行流程,继承和多态增强代码灵活性,异常处理保证程序稳定性。掌握这些知识可帮助您编写简单的Java程序。
|
2天前
|
Oracle Java 关系型数据库
【颠覆性升级】JDK 22:超级构造器与区域锁,重塑Java编程的两大基石!
【9月更文挑战第6天】JDK 22的发布标志着Java编程语言在性能和灵活性方面迈出了重要的一步。超级构造器和区域锁这两大基石的引入,不仅简化了代码设计,提高了开发效率,还优化了垃圾收集器的性能,降低了应用延迟。这些改进不仅展示了Oracle在Java生态系统中的持续改进和创新精神,也为广大Java开发者提供了更多的可能性和便利。我们有理由相信,在未来的Java编程中,这些新特性将发挥越来越重要的作用,推动Java技术不断向前发展。
|
1天前
|
Java 开发者
Java中的多线程编程基础与实战
【9月更文挑战第6天】本文将通过深入浅出的方式,带领读者了解并掌握Java中的多线程编程。我们将从基础概念出发,逐步深入到代码实践,最后探讨多线程在实际应用中的优势和注意事项。无论你是初学者还是有一定经验的开发者,这篇文章都能让你对Java多线程有更全面的认识。
9 1
|
5天前
|
安全 前端开发 Java
浅析JVM invokedynamic指令与Java Lambda语法的深度融合
在Java的演进历程中,Lambda表达式无疑是Java 8引入的一项革命性特性,它极大地简化了函数式编程在Java中的应用,使得代码更加简洁、易于阅读和维护。而这一切的背后,JVM的invokedynamic指令功不可没。本文将深入探讨invokedynamic指令的工作原理及其与Java Lambda语法的紧密联系,带您领略这一技术背后的奥秘。
9 1
|
5天前
|
存储 Java
Java编程中的对象序列化与反序列化
【9月更文挑战第2天】在Java的世界里,对象序列化和反序列化就像是给数据穿上了一件隐形的斗篷。它们让数据能够轻松地穿梭于不同的系统之间,无论是跨越网络还是存储在磁盘上。本文将揭开这层神秘的面纱,带你领略序列化和反序列化的魔法,并展示如何通过代码示例来施展这一魔法。
10 0
|
7天前
|
Java 开发者
Java编程中的异常处理机制探究
【8月更文挑战第31天】在Java的世界中,异常处理是维护程序稳定性的重要工具。它像是一套精密的免疫系统,保护代码免受错误的侵袭,确保程序能够优雅地应对意外情况。本文将带你走进Java的异常处理机制,了解如何捕获和处理异常,以及自定义异常类的创建与应用,让你的代码更加健壮,运行更加顺畅。
|
8天前
|
开发者 C# Windows
WPF与游戏开发:当桌面应用遇见游戏梦想——利用Windows Presentation Foundation打造属于你的2D游戏世界,从环境搭建到代码实践全面解析新兴开发路径
【8月更文挑战第31天】随着游戏开发技术的进步,WPF作为.NET Framework的一部分,凭借其图形渲染能力和灵活的UI设计,成为桌面游戏开发的新选择。本文通过技术综述和示例代码,介绍如何利用WPF进行游戏开发。首先确保安装最新版Visual Studio并创建WPF项目。接着,通过XAML设计游戏界面,并在C#中实现游戏逻辑,如玩家控制和障碍物碰撞检测。示例展示了创建基本2D游戏的过程,包括角色移动和碰撞处理。通过本文,WPF开发者可更好地理解并应用游戏开发技术,创造吸引人的桌面游戏。
17 0
|
8天前
|
算法 Java 开发者
Java 编程入门:从零到一的旅程
本文将带领读者开启Java编程之旅,从最基础的语法入手,逐步深入到面向对象的核心概念。通过实例代码演示,我们将一起探索如何定义类和对象、实现继承与多态,并解决常见的编程挑战。无论你是编程新手还是希望巩固基础的开发者,这篇文章都将为你提供有价值的指导和灵感。
|
10天前
|
机器学习/深度学习 Java TensorFlow
深度学习中的图像识别:从理论到实践Java中的多线程编程入门指南
【8月更文挑战第29天】本文将深入探讨深度学习在图像识别领域的应用,从基础理论到实际应用案例,带领读者一步步理解如何利用深度学习技术进行图像识别。我们将通过一个简单的代码示例,展示如何使用Python和TensorFlow库实现一个基本的图像识别模型。无论你是初学者还是有一定经验的开发者,都能从中获得启发和学习。 【8月更文挑战第29天】在Java世界里,线程是程序执行的最小单元,而多线程则是提高程序效率和响应性的关键武器。本文将深入浅出地引导你理解Java多线程的核心概念、创建方法以及同步机制,帮助你解锁并发编程的大门。