java学习笔记

news2024/9/29 22:19:05

java学习笔记

  1. 直接写出来的人可以理解的数据,在java中叫做字面量。

  2. 字面量分类:
    在这里插入图片描述

  3. 数据类型分类:
    在这里插入图片描述
    在这里插入图片描述

  4. 不同的数据类型分配了不同的内存空间,不同的内存空间,所存储的数据大小是不一样的。

  5. 数据类型内存占用和取值范围:
    在这里插入图片描述
    说明:E+38表示:乘以10的38次方。同理E-45表示:乘以10的负45次方。
    java中,默认整数使用int型,浮点数使用double型

  6. 变量就是内存中的存储空间,空间中存储的数据是可以发生改变。

  7. 变量的定义:
    数据类型 变量名 = 变量值;

  8. 变量的注意事项:
    变量名不能重复
    变量未赋值,不能使用
    定义long类型变量,数据后面加L,如 long a = 100000000000L;
    定义float类型变量,数据后面加F,如 float b = 10.33F;

  9. 标识符:就是给类,方法,变量等起名字的符号,由数字、字母、下划线(_)和美元符($)组成。可以理解为,标识符就是自定义命名的变量名、类名、方法名等等
    如: b2、_2b、bj

  10. 标识符注意事项:
    不能以数字开头
    不能是关键字
    区分大小写

  11. 命名规范:
    小驼峰命名法,通常命名方法,变量
    约定1:标识符一个单词的时候,首字母小写
    范例1:name
    约定2:标识符是多个单词的时候,第一个单词首字母小写,其他单词首字母大写
    范例2:firstName
    大驼峰命名法,通常命名类
    约定1:标识符一个单词的时候,首字母大写
    范例1:Hello
    约定2:标识符是多个单词的时候,每个单词首字母大写
    范例2:HelloWorld

  12. 整数运算只能得到整数,要想得到小数,必须有浮点数参与运算。

package ithm;

public class CountTest {
    public static void main(String[] args) {
        System.out.println(6 / 4); // 输出1 ,因为整数运算只能得到整数,要想得到小数,必须有浮点数的参与
        System.out.println(6.0 / 4); // 输出1.5 ,因为整数运算只能得到整数,要想得到小数,必须有浮点数的参与
    }
}

  1. 运算中,我们要求参与运算的变量,数据类型要保持一致。 如果类型不一致,那么java会自动对其进行隐式转换。

  2. 隐式转换:
    不同数据类型的变量进行运算的时候,会自动将内存占用小的数据类型变量,转换为内存占用大的数据类型,再进行计算。
    在这里插入图片描述
    如下示例:
    int型变量占用4字节内存,double型变量占用8字节内存,那么int型和double型变量进行运算,会自动先将int型变量转为double型变量,之后再进行运算,得到的结果也是double型变量的数据

    package ithm;
    
    public class CountTest {
        public static void main(String[] args) {
            int a = 10;
            double b = 13.14;
            System.out.println(a + b); // 输出23.14
        }
    }
    

但是如果规定了计算结果的数据类型为内存占用小的数据类型,那么不同数据类型的变量就不能进行运算;而如果规定了计算结果的数据类型为内存占用大的数据类型,那么不同数据类型的变量就可以进行运算,如下:

package ithm;

public class CountTest {
    public static void main(String[] args) {
        int a = 10;
        double b = 13.14;
        int res = a + b; // 如果规定了计算结果的数据类型为内存占用小的数据类型,那么不同数据类型的变量就不能进行运算,会报错
        double j = a + b; // 如果规定了计算结果的数据类型为内存占用大的数据类型,那么不同数据类型的变量就可以进行运算
    }
}

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/545302.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

JavaSE入门必读篇——详解数组

文章目录 数组的概念1.什么是数组呢?2.如何创建数组3.遍历数组4.扩展:快速批量初始化 数组原理内存图1. 内存概述2.Java虚拟机的内存划分3.其存储方式图4.认识null 二维数组二维数组初始化遍历二维数组 数组常见异常1. 数组越界异常2. 数组空指针异常 Ja…

Windows下编译安装gRPC

gRPC是Google基于HTTP/2协议开发的一套开源、跨平台的高性能RPC框架,可用于连接微服务架构内的各种服务,亦可以连接客户端与后端服务。 Ref. from gRPC gRPC is a modern open source high performance Remote Procedure Call (RPC) framework that can…

代码随想录算法训练营第二十四天|理论基础 77. 组合

文章目录 理论基础77.组合思路代码总结 理论基础 回溯算法:一种暴力搜索方式 回溯是递归的副产品,只要有递归就会有回溯。 回溯法,一般可以解决如下几种问题: 组合问题:N个数里面按一定规则找出k个数的集合切割问题…

数据安全技术工作部成员动态 | 鸿翼联合天空卫士打造“基于内容的敏感信息处理”解决方案

据2022年统计数据表明,因IT故障、人为错误、供应链攻击、破坏性攻击和勒索软件攻击等原因导致的数据泄露事件频繁发生,信息安全问题比以往任何一个时代都更为突出。信息泄漏造成的危害体现在多方面,不法分子通过各种途径收集的公司的某些重要…

大数据法律监督模型优势特色及应用场景

大数据法律监督平台是基于监督数据整合管理平台、监督模型构建平台、内置模型库以及法律监督线索管理平台打造的一套服务于检察机关法律监督工作的专业化系统。通过数据采集、融合、挖掘、建模、展现等一系列能力,辅助检察官从纷繁复杂的数据中,开展多维…

基于可靠姿态图初始化和历史重加权的鲁棒多视图点云配准

论文作者 | Haiping Wang, Haiping Wang,Haiping Wang,etal 论文来源 | CVPR2023 文章解读 | William 1 摘要 之前的多视图配准方法依赖于穷举成对配准构造密集连接的位姿图,并在位姿图上应用迭代重加权最小二乘(IRLS)计算扫描位姿。但是,构造一个密集…

产品经理必读丨如何找准产品定位?

我们都知道,当一款新产品开始立项之前,势必需要经过谨慎的市场调研才能整合资源启动新的项目,但除此之外,作为产品经理还需要做好一件关键的事情——找准产品在市场中的定位。 什么是产品定位 百度百科对产品定位的解释是非常准确…

重磅新闻!!! ChatGPT手机 app上线苹果app store

就在刚才,打开Tor访问openAI官网准备看看有什么新闻,结果吓我一跳啊! 👇👇👇 ChatGPT app上线APP store了! 我马上拿出手机,一搜索,哎~出现了: chatgpt ios …

想端起“铁饭碗”,你最好先学会这个!

正文共 886 字,阅读大约需要 3 分钟 公务员必备技巧,您将在3分钟后获得以下超能力: 快速生成推荐材料 Beezy评级 :B级 *经过简单的寻找, 大部分人能立刻掌握。主要节省时间。 ●图片由Lexica 生成,输入&a…

Linux---cd命令、pwd命令、mkdir命令

1. cd命令 当Linux终端(命令行)打开的时候,会默认以用户的HOME目录作为当前的工作目录 我们可以通过cd命令,更改当前所在的工作目录。 cd命令来自英文:Change Directory 语法:cd [ linux路径] cd命令…

OpenAI被曝将发布全新开源大模型,网友:GPT平替?

来源 | 量子位 | 公众号 QbitAI OpenAI终于要“Open”了! 最新爆料,他们正准备发布全新的开源语言模型。 GPT-2之后,这尚属四年来首次。 不少网友戳戳手表示期待:这是要发自己的开源平替了吗? 毕竟目前最好的开源…

单片机--SPI协议

目录 【1】SPI协议 1.SPI协议 2.SPI时序 【2】LCD液晶显示屏 【3】点亮LCD显示屏 图片显示 汉字显示 【1】SPI协议 1.SPI协议 SPI(Serial Peripheral Interface)是 摩托罗拉公司(Motorola)首先提出的全双工同步串行外设接口,采用主从模式(Master、…

webpack核心原理

背景 Webpack 特别难学!!! 时至 5.0 版本之后,Webpack 功能集变得非常庞大,包括:模块打包、代码分割、按需加载、HMR、Tree-shaking、文件监听、sourcemap、Module Federation、devServer、DLL、多进程等…

传感云智慧公厕综合解决方案,实现公厕精细化管理

随着国家“公厕革命”建设工作的持续推动与科技创新技术的不断进步,人们对“方便”与“卫生”的要求越来越高,智慧公厕已然成为智慧城市建设规范下的公共厕所新形态,不仅可以解决传统公厕的脏乱差、异味和管理难题,同时可以为用户…

前端 之 FormData对象进阶

一、进阶知识 在前一篇博客中,我讲解了FormData对象的基础概念、相关方法和基本用法,本篇博客我将讲解一些FormDate对象相关的进阶知识,主要包含FormData与其他对象结合使用的各类场景,以及一些使用技巧。 1、FormData对象、JSO…

在一个不小但很美的公司里工作

在这个公司里学到了什么 电商交易前业务:商品,库存,物流,会员 ; 电商广告部分业务: 网红,联盟; 并且对这些业务里的核心流程,核心技术 有过总结。核心技术问题采用对应…

HTTP.sys远程代码执行

本文转载与:https://blog.csdn.net/weixin_47723270/article/details/129472716 01 漏洞描述 HTTP.sys是Microsoft Windows处理HTTP请求的内核驱动程序,为了优化IIS服务器性能,从IIS6.0引入,IIS服务进程依赖HTTP.sys。HTTP.sys远程…

keycloak异常关闭报错username ‘admin‘ already added时卡死无法重启的问题处理

问题现象 使用docker部署keycloak服务,使用docker-compose进行配置管理,配置如下: keycloak:image: jboss/keycloak:16.1.0 container_name: keycloakcommand:[-b,0.0.0.0,-Dkeycloak.migration.actionimport,-Dkeycloak.migration.provider…

UE5中如何新建C++类?

UE5 插件开发指南 前言0.如何在UE编辑器内创建C++类?1.如何在UE编辑器外创建C++类?前言 这个问题应该细分成两个问题: (1)如何在编辑器内创建C++类? (2)如何在编辑器外创建C++类? 问题(1)主要针对那些可以在编辑器内继承并创建的类,然而有些内是无法在编辑内继承的,必须在…

overflow属性的常用值详解

什么是overflow 在CSS中,overflow是“溢出”的意思,该属性规定当内容溢出元素框时发生的事情,设置内容是否会被修剪,溢出部分是否会被隐藏;例如当属性值设置为“visible”则内容不会被修剪,为“hidden”则内…