java 常量、变量、数据类型

news2024/11/17 10:41:08
常量 *
指在程序执行期间其值不能发生变化的数据。例如数学中的π= 3.1415……又如:整数123,小
数1.23,字符’A’,布尔常量 true、false等,程序开发中,常量名一般规则全部大写,声明常量时必
须赋值,以后只能使用,不能再赋值,java语言声明常量使用final。

package cn.webrx;
//静态导入 PI是常量,
import static java.lang.Math.PI;
public class V2 {
//成员,属性
final static int AGE = 18;
public static void main(String[] args) {
//局部 常量
final double pi = Math.PI;
System.out.println(AGE);
System.out.println(pi);
//使用常量
System.out.println(PI);
}
}
运行结果:
18
3.141592653589793
3.141592653589793

变量 *
变量:是指值在程序运行期间可以被改变的量。变量用于储存信息。它指向内存的某个单元,
而且指明了这块内存有多大。java是强类型,变量必须先声明初始化才可以使用。java程序中,变
量名是区分大小写。

package cn.webrx;
import java.util.Date;
public class Var1 {
//属性 成员 变量 属性 在实例化会自动初始化 int 0 double float 0.0 Object null
boolean false
Date age ;
int[] aa;
//方法
public static void main(String[] args) {
//局部变量
//var v = new Var1();
Var1 vv = new Var1();
System.out.println(vv.age);
//System.out.println(vv.aa);
int x = 55;
{
//块级变量
int y = 5;
System.out.println(y);
System.out.println(x);
}
int y = 6;
System.out.println(y);
System.out.println("Hello world");
//合用局部变量,不会自动初始化,在使用的时候必须赋值初始化
//String s = "Hello world";
String s;
s = "ok";
//System.out.println(s.repeat(13));
System.out.println("sq1server");
System.out.println(s);
System.out.println("s");
//save(s) 保存
}
}



java 10 var 类型推断声明变量

package cn.webrx;
import java.text.SimpleDateFormat;
import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Map;
public class Var2 {
//错误的,var局部变量类型推断,必须声明赋值,不能成员成员变量
//var i = 5;
public static void main(String[] args) {
//要求java 规范必须 10以上版本
var v = LocalDateTime.now();
var sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
var list = new ArrayList<Map<String,Object>>();
var a = 15;
a = 16;
var d = new Date();
for (var i = 1.0; i <= 5; i++) {
System.out.println(i);
}
}
}

常量:声明final 类型 常量名(标识符) = 值; //声明时必须初始化值,只能使用,不可再次赋值。
//声明 使用 常量
变量:类型 变量名(标识符)= 值; //可以使用,也可以再次赋值,如果不是静态的,必须实例化对
象后才可能在方法中访问 user.age。
//声明 使用 变量
静态:static 变量常量 修饰符,java规定main方法必须是static方法,在main方法中可以直接访问
static变量的值。

package org.webrx;
public class Student {
//声明常量
static final int AGE = 18;
//静态变量,可以在main方法直接使用,不用实例化 属性
static int num = 55;
public static void main(String[] args) {
//System.out.println(AGE);
//实例化对象
//Student lisi = new Student();
//使用对象的常量
num = 99;
//System.out.println(lisi.AGE);
System.out.println(num);
System.out.println(AGE);
System.out.println(Student.AGE);

}
}

数据类型 *
Java 支持数据类型分为两类: 基本数据类型和引用数据类型。
基本数据类型共有 8 种,可以分为三类:
数值型:整数类型( byte short int long )和浮点类型( float double
字符型: char
布尔型: boolean
float double 的最小值和最大值都是以科学记数法的形式输出的,结尾的 “E+ 数字 表示 E 之前的数字
要乘以 10 的多少倍。比如 3.14E3 就是 3.14×1000=3140 3.14E-3 就是 3.14/1000=0.00314
注意一下几点:
java 八种基本数据类型的字节数 :1 字节 (byte boolean) 2 字节 (short char) 4 字节 (int
float) 8 字节 (long double)
39/380 浮点数的默认类型为 double (如果需要声明一个常量为 float 型,则必须要在末尾加上 f F
整数的默认类型为 int (声明 Long 型在末尾加上 l 或者 L
八种基本数据类型的包装类:除了 char 的是 Character int 类型的是 Integer ,其他都是首字母
大写
char 类型是无符号的,不能为负,所以是 0 开始的
/*
* Copyright (c) 2006, 2023, webrx.cn All rights reserved.
*
*/
package cn.webrx;
/**
* <p></p>
* <p>Powered On 2023-02-07 15:42:14</p>
*
* 
* @version 1.0
* @since 17
*/
public class Type1 {
public static void main(String[] args) {
//byte short int long float double char boolean
byte b1 = 5;
System.out.println(b1);
short s1 = 5;
System.out.println(s1);
int i1 = 5;
System.out.println(i1);
long n1 = 5;
System.out.println(n1);
System.out.println(Integer.MIN_VALUE);
System.out.println(Integer.MAX_VALUE);
float f1 = .5f;
double d2 = .5;
System.out.println(f1);
System.out.println(d2);
char c1 = 'a';
int num = 'a';
char c2 = '中';
System.out.println(c1);
System.out.println(num);
System.out.println(c2);
System.out.println((int) c2);
boolean f = !!!false == true;
System.out.println(f);
int aaa2 = (int)2482482234553L;
System.out.println(aaa2);

2.4.4 类型转换 *
自动类型转换隐式转换
转换规则:从存储范围小的类型到存储范围大的类型。简言之,由低到高。
具体规则为:byte→short(char)→int→long→float→double
强制类型转换(float)3.5;
double n = 10;
//ctrl + d 复制行
//alt + shift + up(down) 移动行
//快速进入某处代码位置(使用idea 书签) f11 ctrl + f11 shift+f11
}
}

类型转换 *

自动类型转换隐式转换
转换规则:从存储范围小的类型到存储范围大的类型。简言之,由低到高。
具体规则为:byte→short(char)→int→long→float→double
强制类型转换(float)3.5;

/*
* Copyright (c) 2006, 2023, webrx.cn All rights reserved.
*
*/
package cn.webrx;
import java.util.Date;
/**
* <p></p>
* <p>Powered by webrx On 2023-02-07 16:09:07</p>
*
* @version 1.0
* @since 17
*/
public class Type2 {
public static void main(String[] args) {
int a = 30;
//自动转换
long b = a;
//强制转换
byte c = (byte)a;
//Date d = new Date();
//int y = (int)ld.getTime();
}
}

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

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

相关文章

排序算法-希尔排序法(ShellSort)

排序算法-希尔排序法&#xff08;ShellSort&#xff09; 1、说明 我们知道当原始记录的键值大部分已排好序的情况下插入排序法非常有效&#xff0c;因为它不需要执行太多的数据搬移操作。希尔排序法是D.L.Shell在1959年7月发明的一种排序法&#xff0c;可以减少插入排序法中数…

tomcat 问题

一、start up.bat 闪退 在命令窗口run 看看是缺少了哪个环境变量 二、控制台输出乱码 logging.properties 底部添加 java.util.logging.ConsoleHandler.encoding GBK 三、缓存不足 context.xml配置 <Resources cachingAllowed"false" cacheMaxSize"100…

从字节码文件理解 ++i 和 i++ 的区别_i++ 与 ++i 底层

jvm内存模型 jvm 内存模型&#xff1a;Java 代码是运行在 Java 虚拟机之上的&#xff0c;由 Java 虚拟机通过解释执行 (解释器)或编译执行 (即时编译器) 来完成&#xff0c;故 Java 内存模型&#xff0c;也就是指 Java 虚拟机的运行时内存模型。 运行时内存模型&#xff0c;分…

【2023集创赛】安谋科技杯二等奖作品: 智能体感游戏机

本文为2023年第七届全国大学生集成电路创新创业大赛&#xff08;“集创赛”&#xff09;安谋科技杯二等奖作品分享&#xff0c;参加极术社区的【有奖征集】分享你的2023集创赛作品&#xff0c;秀出作品风采&#xff0c;分享2023集创赛作品扩大影响力&#xff0c;更有丰富电子礼…

KUKA机器人如何强制输出或取消数字IO信号?

KUKA机器人如何强制输出或取消数字IO信号? 具体的操作方法和步骤可参考以下内容: 如下图所示,点击菜单—显示—输入/输出端,如下图所示,选择想要查看的信号,这里以数字输出端为例进行说明, 如下图所示,此时可以看到输出端信号的编号、名称和当前值,可以通过下拉滚动条…

UE4和C++ 开发-编程基础记录(UE4+代码基础知识)

1、UE4基础元素 ①Actor 我们又见面了Actor&#xff0c;Actor是在一个关卡中持续存在的&#xff0c;通常他包含几个Actor组件。支持网络复制和多人游戏。   Actor不包含位置&#xff0c;方向。这些东西在Root Component中存储。对于UE3 中的Pawn也由PlayerCharacter继承了…

信钰证券:股票交易费用计算方法?

股票生意是股市参加者之间进行的买入和卖出股票的进程。其中&#xff0c;股票生意费用是参加股市生意的重要组成部分。本文将从多个视点分析股票生意费用计算方法。 首先&#xff0c;股票生意费用一般包含三部分。分别是佣钱、印花税和过户费。佣钱是证券公司为代理股票生意而收…

UE4和C++ 开发-常用的宏(二)UPROPERTY(类似于Unity中C#的特性[SerializeField])

UPROPERTY的作用类似于Unity中C#的特性[SerializeField]或者Godot中的export。目的就是通过反射把属性暴露在蓝图或实例的细节面板。 属性说明符&#xff08;Property Specifiers&#xff09;

IDEA设置自动导入包

IDEA设置自动导入包 首先进入设置选项 之后勾选以下两项&#xff1a; 第一项&#xff1a;IntelliJ IDEA 将在我们书写代码的时候自动帮我们优化导入的包&#xff0c;比如自动去掉一些没有用到的包。 第二项&#xff1a; IntelliJ IDEA 将在我们书写代码的时候自动帮我们导入…

mac,linux环境的基础工具安装【jdk,tomcat】

安装 一 linux环境一&#xff09;、JDK安装卸载&#xff1a; 二&#xff09;、 tomcat 安装1、[下载](https://mirrors.bfsu.edu.cn/apache/tomcat/tomcat-8/v8.5.63/bin/apache-tomcat-8.5.63.tar.gz)后&#xff0c;在目录 /usr/local/tomcat下&#xff0c;解压缩2、配置tomca…

基于SpringBoot的学院班级回忆录

目录 前言 一、技术栈 二、系统功能介绍 管理员模块的实现 用户信息管理 班委信息管理 班级信息管理 班级相册管理 用户和班委模块的实现 班委注册 班级信息管理 加入班级 三、核心代码 1、登录模块 2、文件上传模块 3、代码封装 前言 随着信息技术在管理上越来越…

spring boot自定义配置时在yml文件输入有提示

自定义一个配置类&#xff0c;然后在yml文件具体配置值时&#xff0c;一般不会有提示&#xff0c;这个解决这个问题 依赖 <!--自定义配置类&#xff0c;在yml文件写的时候会有提示--><dependency><groupId>org.springframework.boot</groupId><arti…

opencv图像卷积操作原理,opencv中常用的图像滤波函数

文章目录 opencv图像卷积操作原理&#xff0c;opencv中常用的图像滤波函数一、图像卷积操作原理&#xff1a;1、卷积操作原理图&#xff1a; 二、opencv常用的图像滤波函数&#xff1a;这些函数的主要作用是对图像进行平滑处理或去除噪声(核心目的是减少图像中的噪声&#xff0…

【C++入门系列】——命名空间和输入输出

​作者主页 &#x1f4da;lovewold少个r博客主页 ⚠️本文重点&#xff1a;c入门第一个程序和基本知识讲解 &#x1f604;每日一言&#xff1a;忙&#xff0c;不会死&#xff0c;人只有越忙越活&#xff0c;流水不腐&#xff0c;户枢不蠹。 目录 ​作者主页 前言 谈谈我个人…

2ED2410-EM:12v / 24v智能模拟高侧MOSFET栅极驱动器

概述 12v / 24v智能模拟高侧MOSFET栅极驱动器。 特性 PRO-SIL ISO 26262-准备根据ISO 26262:2018条款8-13支持硬件元件评估的集成商。一个通道器件具有两个高侧栅极驱动器输出。3 Ω下拉,50 Ω上拉,用于快速开关开/关。支持背靠背MOSFET拓扑(共漏极和共源)。两个双向高侧模拟…

C/C++ 线程超详细讲解(系统性学习day10)

目录 前言 一、线程基础 1.概念 2.一个进程中多个线程特征 2.1 线程共有资源 2.2 线程私有资源 3.线程相关的api函数 3.1 创建线程 创建线程实例代码如下&#xff1a; 需要特别注意的是&#xff1a; -lpthread和-pthread的区别 3.2 给线程函数传参 传参实例代码如…

生命在于学习——Stable Diffution(Mac端)

一、前言 最近一段时间研究了一下Stable Diffution&#xff0c;Windows和MAC端都搭建成功了&#xff0c;也尝试了各种功能&#xff0c;后续会学习新的使用姿势&#xff0c;写一篇文章记录一下。 二、介绍 1、Stable Diffution是什么 Stable Diffusion&#xff0c;是一种AI绘…

如何处理前端安全性问题(XSS、CSRF等)?

聚沙成塔每天进步一点点 ⭐ 专栏简介 前端入门之旅&#xff1a;探索Web开发的奇妙世界 欢迎来到前端入门之旅&#xff01;感兴趣的可以订阅本专栏哦&#xff01;这个专栏是为那些对Web开发感兴趣、刚刚踏入前端领域的朋友们量身打造的。无论你是完全的新手还是有一些基础的开发…

记一次生产大对象及GC时长优化经验

最近在做一次系统整体优化,发现系统存在GC时长过长及JVM内存溢出的问题,记录一下优化的过程 面试的时候我们都被问过如何处理生产问题&#xff0c;尤其是线上oom或者GC调优的问题更是必问&#xff0c;所以到底应该如何发现解决这些问题呢&#xff0c;用真实的场景实操&#xff…

PHP LFI 利用临时文件Getshell

PHP LFI 利用临时文件 Getshell 姿势-安全客 - 安全资讯平台 LFI 绕过 Session 包含限制 Getshell-安全客 - 安全资讯平台 目录 PHP LFI 利用临时文件Getshell 临时文件 linux 和 windows的 临时文件存储规则 linux和windows对临时文件的命名规则 PHPINFO()特性 原理 条…