首页 > 编程语言 >Java基础整理

Java基础整理

时间:2023-05-17 09:45:19浏览次数:41  
标签:Java 变量 ++ double float 基础 long int 整理

环境配置

  • 在IDEA创建空项目后,new一个module!
  • 标准配置:jdk1.8 + language 8

注释

  • // 单行注释
  • /* */ 多行注释
  • 文档注释
JavaDoc
/**
*@author
*@description
*/

设置注释的字体和样式,在IDEA中按以下步骤

settings->Editor->color scheme->java->comment


强(弱)类型语言

  1. 强类型语言中,所有的变量必须先经过定义才能够使用该变量;
  2. 弱类型语言中,变量无需定义即可使用

数据类型

  • 整数类

    type

    short

    int (4字节)

    long(8字节):定义该类的时候,必须要在末尾加一个Leg: long num = 30L;

  • 浮点类

    float(4字节)定义该类的时候,必须要在末尾加一个Feg: float num = 30.2F;

    double(8字节)

  • 字符类

    • char (2字节):定义该类的时候,必须使用‘ ’,eg: char ch = 'a';
    • 字符本质上还是数字,其中涉及了Unicode编码问题,a:97,A:65
  • 布尔类

    boolean flag = true;

    boolean flag = false;

数据类型的优先级

byte,short,char -> int ->long ->float ->double

低--------------------------------------------------------------->高

​ 低 -> 高 自动转换

​ 高 -> 低 强制转换

  • 其中,布尔类型不能进行转换
  • 在转换的过程中,存在内存溢出或者精度问题

进制表示

2进制:0b 满2进1 0 1 10

8进制:0 满8进1 0 1 2 3 4 5 6 7 10

16进制:0x 满16进1 0 1 2 3 4 5 6 7 8 9 A B C D E F 10


float型数据的一些注意事项

float a1 = 0.1f;
double a2 = 1.0/10;    
// out:a1与a2不等
float d1 = 231425789248f;
float d2 = d1+1;
// out:d1与d2相等

注意事项:float型数据字长有限,离散,有舍入误差,大约数,接近但不等于

因此要完全避免利用float型数据进行数字比较运算,容易出错!!!尤其是在银行业务中~~


转义字符

  • /t 制表符

  • /n 换行变量作用域问题


变量作用域问题

  • 类变量要加关键字static

  • 类变量不需要初始化,若不初始化,则默认如下

  • 实例变量从属于对象,若不进行初始化,则数值型变量默认为0或者0.0

    布尔型变量默认为false

    除8大基本类型变量之外,其余皆为null

局部变量必须要声明且初始化值

  • final修饰常量,且尽量为大写,eg:final double PI = 3.14;

运算符相加问题

a+b+c+d

  • 只要有long,则结果为long
  • 只要有double,则结果为double
  • 其余皆为int,eg:byte+short->int(经实践)
  • 若既有long,也有double,则为double(经实践)

++问题

  1. a++:执行顺序 b=a;a=a+1;

    执行完a++后,才会执行a=a+1.

    若a++命令不执行,则a为原值.

    也就是说,可以从a的值是否变化来判断a++命令是否运行了.

  2. ++a: 执行顺序 a=a+1;b=a

  3. 快捷键复制:ctrl+d

  4. Java中数学计算乘方:Math.pow()


位运算符

A:0011 1100

B:0000 1101

A & B : 0000 1100 (全1才为1,否则为0)

A | B : 0011 1101 (全0才为0,否则为1)

(抑或)A ^ B : 0011 0001 (相同为0,否则为1)

(非) ~B:1111 0010

》右移运算符:除以2

《左移运算符:乘以2

二进制 8 0000 1000

二进制16 0001 0000 左移1位相当于*2


字符串连接符

int a= 10;
int b=20;
sout(""+a+b);
// 输出值为1020,进行了拼接


sout(a+b+"");
// 输出值为30,不进行拼接

标签:Java,变量,++,double,float,基础,long,int,整理
From: https://www.cnblogs.com/Taurus4617/p/17407590.html

相关文章

  • java 连接 sqlserver 报错
    使用最新的sqlserver驱动报错:com.zaxxer.hikari.pool.HikariPool$PoolInitializationException:Failedtoinitializepool:"encrypt"propertyissetto"true"and"trustServerCertificate"propertyissetto"false"butthedri......
  • Java进程(基础)
    基本概念1、进程:程序的执行过程2、线程:一个进程可以有单个线程也就是我们说的单线程,还可以有多个线程也就是我们说的多线程,线程1、当一个类继承了Thread类就可以当成一个线程用2、我们会重写run方法写上我们自己的业务逻辑3、runThread类实现了RUnnable接口,静态代理模式......
  • 一个程序设计业务中,如果需要这个表数据对应3种业务,但是唯独其中一种要多几个字段去展
    作为一个AI助手,我可以为您提供一些设计思路,但是最终的决定应该基于具体场景和业务需求。一种解决方案是在原表基础上新增字段。这种方法简单快捷,可以避免复杂的表关联,但是会使得表结构变得臃肿,不利于维护和拓展。如果这个表在后续的业务中还需要扩展字段,就会更加困难。另一种解......
  • Java-Day-22( 线程一:相关概念 + 继承 Thread 类 + 实现 Runnable 接口 + JConsole 监控
    Java-Day-22线程相关概念程序:是为完成特定任务、用某种语言编写的一组指令的集合(就是平常所写代码)进程:运行中的程序,例如,打开一个软件就启动一个进程,操作系统就会给每个启动的软件分配一新的内存(活动进程占用的物理内存)空间进程是程序的一次执行过程,或是正在运......
  • SSM整合报错:errorCode 1045, state 28000 java.sql.SQLException: Access denied for
    SSM整合报错:errorCode1045,state28000java.sql.SQLException:Accessdeniedforuser简述SSM整合项目配置好环境后,当要对数据库进行操作,加载jdbc.properties数据库配置文件时,出现下面的报错createconnectionSQLException,url:jdbc:mysql://localhost:3306/furn_ssm,......
  • SQL常用的基础语法
    声明        本公众号所有内容,均属微信公众号:开源优测 所有,任何媒体、网站或个人未经授权不得转载、链接、转贴或以其他方式复制发布/发表。已经本公众号协议授权的媒体、网站,在使用时必须注明"稿件来源微信公众号:开源优测",违者本公众号将依法追究责任。SQL常用的语法......
  • MySQL数据基础知识整理—1
     MySQL数据库在学习之前,我们要了解什么是MySQL数据库?MySQL数据库是一个开源的关系型数据库管理系统,我们可以使用SQL(StructuredQueryLanguage)作为开发语言,对数据进行操作,并且,该数据库支持多用户,多线程,多种存储引擎,因此被广泛的应用于Web开发中。    简单来说,MySQL数据库就......
  • Javaweb
    资源无法导出问题<!--在build中配置resources,来防止我们资源导出失败问题--><build>  <resources>    <resource>      <directory>src/main/resources</directory>      <includes>        <include>**/*.properties<......
  • Java设计模式-装饰模式
    简介装饰模式在Java领域是一种常见的设计模式,它能够在不改变对象原有结构的情况下,动态地为对象添加新的功能。它通过封装原有对象,在运行时动态地为对象添加新的行为或者修改原有行为,以扩展对象的功能。这种方式避免了继承的静态特性,让对象的行为可以根据需要进行动态变化。在装......
  • linux 下运行一个java程序
     在linux下,测试一个小程序如果用到自己lib,则在程序目录下建一个lib目录,把相应的jar放进去。test是package名称java-classpath.:lib/*test.TestPing    在linux的后台运行#nohupjava-classpath.:lib/*hkrecdis&#exit......