Java基础学习(一):类名规范、返回值、注释、数据类型

目录

相关文章

了解一些关于Java的术语:

缩写 术语名 作用
JDK Java Development Kit 编写Java程序
JRE Java Runtime Environment 运行Java程序
SE Standard Edition Java的一些核心语法规则,用于桌面或简单服务器应用的Java平台
EE Enterprise Edition Java的web开发,用于复杂服务器应用的Java平台
ME Micro Edition 手机开发
SDK Software Development Kit 用于描述1998~2006年间的JDK

一、类名规范

规范 示例 作用于
大驼峰 FirstSample 多个单词,每个单词首字母大写 类名
小驼峰 firstSample 多个单词,第一个单词首字母小写,剩下的单词首字母大写 变量名、方法名、文件名、文件夹名
全大写 FIRSTSAMPLE 字母全大写 一般用作常量,只能第一次赋值,后续不能在赋值,永远不变,如Π:PI=3.14

二、返回值

  • void:没有返回值

    java 复制代码
    public static void sort(int[] arr) {
    }
  • int:要有返回return的数据

    java 复制代码
    public static int g(int x) {
    	return 3*x-8;
    }

三、注释

  • //:单行注释

  • /* */:多行注释,/*开始,*/结束

    java 复制代码
    /*
    * 这是一个多行注释
    * 可以跨越多行
    */
  • /** */:文档注释,/**开始,*/结束

    • 代码作者

    • 最后一次维护

    • 联系邮箱

    • 此类作用

      java 复制代码
      /**
       * 这是一个文档注释
       * 通常用于描述类、方法或字段的功能
       * 
       * @param name 用户名
       * @return 欢迎消息
       */

四、数据类型

1. 基本类型

8种四类

类型 种类 占几字节 占几bit 取值范围
整数 byte 1字节 8bit 2 8 2^8 28-128~127
整数 short 2字节 16bit 2 1 6 2^16 216-322768~32767
整数 int 4字节 32bit -2147483648~2147483647(超过20亿)
整数 long 8字节 64bit
浮点数 float 4字节 32bit
浮点数 double 8字节 64bit
布尔型 boolean
字符串 char

注意:

  1. 1字节=8bit
  2. 取值范围中0归为正数
  3. int型不能存手机号

整数

  • int默认值为0

  • 第一位表示符号位,剩余的表示数值位。

  • 符号位中:0代表正数,1代表负数。

  • byte、short、int、long后续做运算,默认转换为int类型,所以需要进行强制类型转换

    java 复制代码
    byte a = 125;
    byte b = (byte) (a+1);
    //long x = 1000L;

浮点数

  • 浮点数默认值为0.0
  • float:第一位表示符号位,8位表示阶位,23表示数值位;
    • 表示小数:设阶位为x(256),数值位为y,2(x-127) *y,阶位的值小于127可表示小数
    • float a=0.25Ffloat b=0.75f
  • double:第一位表示符号位,11位表示阶位,52表示数值位。
    • 表示小数:设阶位为x(256),数值位为y,2(x-1023) *y,阶位的值小于1023可表示小数
    • double c=1.56Ddouble d=1.89d
  • 浮点数中,数据默认转换为double类型存储。

问题1:float和int谁的精度更高?

数值越小float精度越高,数值越大int精度越高。
问题2:float和double谁的精度更高?

double表示的浮点数的数值精度是float的两倍。绝大部分程序采用的是double类型。

char类型:字符

  • char类型默认值为空字符
  • 要用单引号括起来

布尔型

  • 布尔类型默认值为false
  • 有两个值:true或false,用来判断逻辑条件
  • 整数值和布尔值之间不能进行转换

2. 引用类型

  • 引用类型默认值为空
  • 除了基本类型的8中四类之外,剩下的都是引用类型,如:Byte、Long、String等。

3. 强制数据类型转换

基本语法:

java 复制代码
目标类型 变量名 = (目标类型) 要转换的值或变量;

示例:

java 复制代码
//将double类型数据转换成int类型
double d = 3.1415926;
int i = (int) d;//截断小数部分
System.out.println(i)//输出结果:3

实心箭头表示无信息丢失的转换;虚箭头表示可能有精度损失的转换。

  • 数值类型之间的强制转换

    • double - > int
    • long - > int
    • int - > byte
  • 浮点数和整数之间的转换

    • float - > int
    • double - > float
    • int - > float(自动转换)
  • char类型的强制转换

    • int - > char
    • char - > int(不需要强制转换)
  • 对象类型的强制转换

  • 自动装箱和拆箱中的强制转换

    java 复制代码
    // 基本类型 -> 包装类 (自动装箱)
    Integer integer = 100;
    
    // 包装类 -> 基本类型 (自动拆箱)
    int i = integer;
    
    // 强制转换示例
    Double d = 123.456;
    int i2 = (int) (double) d;  // 先拆箱为double,再强制转换为int
    System.out.println(i2);  // 输出: 123

注意:布尔类型不能于其他基本类型相互强制转换。

4. 进制

计算机底层存储的是二进制数据。

  • 十进制:平常使用的是十进制数据,0~9,逢十进一;
  • 二进制 :数据前加0b,0~1,逢二进一;
  • 八进制 :数据前加0,0~7,逢八进一;
  • 十六进制 :数据前加0x,0~f(a=10,b=11,c=12,d=13,e=14,f=15),逢十六进一;
java 复制代码
int x1 = 10;//十进制
int x2 = 0b11;//二进制
int x3 = 07654;//八进制
int x4 = 0x4ac;//十六进制

5. 进制的转换

任意进制转换为十进制: 数字乘进制的多少次方在相加

十进制拆解: 2412 = 2 ∗ 1 0 3 + 4 ∗ 1 0 2 + 1 ∗ 1 0 1 + 2 ∗ 1 0 0 2412 = 2*10^3 + 4*10^2 + 1*10^1 + 2*10^0 2412=2∗103+4∗102+1∗101+2∗100

二进制转换为十进制: 1011 = 1 ∗ 2 3 + 0 ∗ 2 2 + 1 ∗ 2 1 + 1 ∗ 2 0 = 11 1011 = 1*2^3 + 0*2^2 + 1*2^1 + 1*2^0 = 11 1011=1∗23+0∗22+1∗21+1∗20=11

十进制转换任意进制: 数据除进制取余,直到商为0,倒序取余数

十进制转换成二进制:10 = 1010

过程:

bash 复制代码
10 ÷ 2 = 5 余 0
5 ÷ 2 = 2 余 1
2 ÷ 2 = 1 余 0
1 ÷ 2 = 0 余 1

6. 超范围运算

计算机底层存储的是二进制数据。
反码: 正数和源码一样,负数符号位不变,其余取反
补码: 正数和源码一样,负数补码是反码+1

计算机底层使用的是补码做运算。

java 复制代码
byte x1 = 127;//01111111 + 00000001 = 10000000
byte x2 = (byte)(x1+1);
System.out.println(x2);//输出结果:-128
相关推荐
我叫黑大帅1 分钟前
📝 Java 文件 IO 入门教程
java·前端
yiqiqukanhaiba11 分钟前
江协科技STM32学习笔记1
科技·stm32·学习
.又是新的一天.18 分钟前
SpringBoot+SpringMVC常用注解
java·spring boot·后端
竹子_2330 分钟前
贪心算法解析
python·算法·贪心算法
三木水32 分钟前
Spring-rabbit使用实战六
java·后端·spring·消息队列·java-rabbitmq
郝学胜-神的一滴36 分钟前
OpenGL状态机与对象管理:优化图形渲染的高效方法
开发语言·c++·程序人生·算法·图形渲染
录大大i37 分钟前
Druid与JdbcTemplate基本使用
java·spring
丶小鱼丶38 分钟前
Spring之【详解FactoryBean】
java·spring
Dcs1 小时前
IDEA 2025.2又整大活!AI 助手脱胎换骨,Spring 调试一秒看透,连 Java 25 和虚拟线程都安排上了!
java
MSXmiao1 小时前
2048小游戏
数据结构·c++·算法