JAVA学习(5)-全网最详细~

🌈write in front🌈
🧸大家好,我是Aileen🧸.希望你看完之后,能对你有所帮助,不足请指正!共同学习交流.
🆔本文由Aileen_0v0🧸 原创 CSDN首发🐒 如需转载还请通知⚠️
📝个人主页:Aileen_0v0🧸—CSDN博客
🎁欢迎各位→点赞👍 + 收藏⭐️ + 留言📝​
📣系列专栏:Aileen_0v0🧸的JAVA学习系列专栏🌸——CSDN博客
🗼我的格言:"没有罗马,那就自己创造罗马💫~"

目录

回顾 💫

引用数据类型- String🔆

String 字符串的拼接  " + " 🎈

字符串 与 字符串的拼接🎍

​编辑

字符串 和 整数的拼接🎋

Int 和 String 的相互转换 ✨

整型转字符串🪁

字符串转整型 🎏

final 关键字修饰的 常量🪄

常见的常量 🏓

数据类型转换 🎡

隐式类型转换🏙

显示类型转换 🏫

 类型转换小结🗼

int 和 boolean 相互赋值 ⛩

理解数值提升-int 和 long 混合运算⭐



回顾 💫

前面几篇我们详细的讲解了JAVA 中八大基本数据类型,如有遗忘

点击链接🔗:

http://t.csdnimg.cn/zMwV0  -变量和整型

http://t.csdnimg.cn/J32wc    -Long Double&Float

http://t.csdnimg.cn/KNpkZ   -Char Byte Short Boolean

进行跳转式阅读

今天我们开始下一部分-引用数据类型的学习~

引用数据类型- String🔆

package TestDemo;public class TestDemo {public static void main(String[] args) {String str = "\\\\hello\\\\";//"hello"System.out.println(str);int i = 2147483647 + 1;int i2 = Integer.MAX_VALUE + 1;System.out.println(i);System.out.println(i2);}
}

命令行运行结果:


String 字符串的拼接  " + " 🎈

字符串 与 字符串的拼接🎍

package TestDemo;public class TestDemo {public static void main(String[] args) {String a = "hello";String b = "world";String c = a + b;System.out.println(c);}
}

 控制台运行结果:

---------------------------------------------------------------------------------------------------------------------------------

字符串 和 整数的拼接🎋

package TestDemo;public class TestDemo {public static void main(String[] args) {String str = "result = ";int a = 10;int b = 20;String result = str + a + b;System.out.println(result);}}

控制台运行结果: 

Summary:

        打印内容只要有字符串,结果就是以字符串类型打印出来.


Int 和 String 的相互转换 ✨

整型转字符串🪁

package TestDemo;public class TestDemo {public static void main(String[] args) {int num = 10;//方法1:String str1 = num + "";//方法2:String str2 = String.valueOf(num);System.out.println(str1);System.out.println(str2);}
}

控制台运行结果: 

**************************************************************************************************************

字符串转整型 🎏

package TestDemo;public class TestDemo {public static void main(String[] args) {String str = "100";int num = Integer.parseInt(str);System.out.println(num);}
}

控制台运行结果:

 

如果字符串里面含字母会怎么样呢?

package TestDemo;public class TestDemo {public static void main(String[] args) {String str = "100a";int num = Integer.parseInt(str);System.out.println(num);}
}

 控制台运行结果:

这是JAVA中的一种异常,后面会继续拓展~ 


final 关键字修饰的 常量🪄

package TestDemo;public class TestDemo {public static void main(String[] args) {/*** 常量只能被初始化一次,且使用的时候 一定要记得初始化.*/final int MAXNUM;MAXNUM = 999;//初始化常量 MAXNUMSystem.out.println(MAXNUM);}
}

 final 修饰的 变量 称为 常量--->用大写 MAXNUM表示

常量不能在 程序运行过程中 发生修改.

例如: 

package TestDemo;public class TestDemo {public static void main(String[] args) {/*** 常量只能被初始化一次,且使用的时候 一定要记得初始化.*/final int MAXNUM;MAXNUM = 999;MAXNUM = 10000;System.out.println(MAXNUM);}
}

控制台运行结果:

常见的常量 🏓

10int字面值常量(十进制)
010int字面值常量(八进制) 由数字 0 开头  010 也就是十进制的8
0x10int字面值常量(十六进制)由数字 0x 开头 0x10 也就是 十进制的 16
10Llong字面值常量 可写作 10l (小写的L)
1.0double

字面值常量 可写作 1.0d 或者 1.0D

1.5e2double字面值常量 科学计数法表示 相当于 1.5 * 10^2
1.0ffloat字面值常量 可写作 1.0F
trueboolean字面值常量 同样的还有 false
'a'char字面值常量 单引号中只能有一个字符
"abc"String字面值常量 双引号中可以有多个字符


数据类型转换 🎡

隐式类型转换🏙

package TestDemo;public class TestDemo {public static void main(String[] args) {int a = 10;long b = a;System.out.println(b);}
}

 控制台运行结果:

**************************************************************************************************************

显示类型转换 🏫

package TestDemo;public class TestDemo {public static void main(String[] args) {long a = 10;int b = (int)a;System.out.println(b);}
}

控制台运行结果:

 

package TestDemo;public class TestDemo {public static void main(String[] args) {byte b = 10;byte c = 20;byte d = b + c;System.out.println(d);}
}

控制台运行结果:

通过输出结果可知,b是 int 类型, c 也是 int 类型, 它们相加的结果也是 int 类型 ,不能直接转换成byte.

有两种方式可以对上面的代码进行修改:

方法1:

        将 byte d 改成 int d 

package TestDemo;public class TestDemo {public static void main(String[] args) {byte b = 10;byte c = 20;int d = b + c;System.out.println(d);}}

控制台运行结果:

方法2:

        对 b + c 进行强制类型转换.---> byte -1字节

package TestDemo;public class TestDemo {/*** 小于4个字节的数据类型 运算的时候 会发生类型的提升* * @param args*/public static void main(String[] args) {byte b = 10;byte c = 20;byte d = (byte)(b + c);System.out.println(d);}
}

控制台输出结果:

 

 类型转换小结🗼

1.不同数字类型的变量间赋值,表示范围更小的类型能隐式转换成范围较大的类型.

2.若需将大范围类型赋值给小范围,需要进行强制类型转换,但可能丢失精度.

3.将字面值常量进行赋值时,JAVA会自动针对数值范围进行检查.


int 和 boolean 相互赋值 ⛩

package TestDemo;public class TestDemo {public static void main(String[] args) {int a =10;boolean b = true;b = a ;a = b ;}
}

控制台运行结果: 

 根据上面运行结果,我们可以得出: int 和 boolean 是毫不相干的两种类型,不能相互赋值.


理解数值提升-int 和 long 混合运算⭐

package TestDemo;public class TestDemo {public static void main(String[] args) {int a = 10;long b =  20;int c = a + b;}
}

控制台运行结果: 

package TestDemo;public class TestDemo {public static void main(String[] args) {int a = 10;long b = 20;long d = a + b;//int c = a + b;System.out.println(d);}

 控制台运行结果:

类型提升summary:

        1.不同类型的数据混合运算,范围小的会提升为范围大的.

        2.对于 short , byte 这种比4个字节小的类型,会先提升为4个字节的 int ,再进行运算.

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

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

相关文章

第八章 Linux文件系统权限

目录 8.1 文件的一般权限 1.修改文件或目录的权限---chmod命令 2.对于文件和目录,r,w,x有不同的作用: 3.修改文件或目录的所属主和组---chown,chgrp 8.2 文件和目录的特殊权限 三种通过字符描述文件权限 8.3 ACL 权限 1.A…

redis高可用(主从复制,哨兵,集群)

目录 一、主从复制: 1.主从复制介绍: 2.主从复制的作用: 3.主从复制流程: 4.搭建Redis 主从复制: 4.1 环境准备: 4.2 安装redis: 4.3 master节点修改 Redis 配置文件: 4.4 slave节点…

JAVA面经整理(7)

一)什么是AQS? 1)AQS也被称之为是抽象同步队列,它是JUC包底下的多个组件的底层实现,Lock,CountDownLatch和Semphore底层都使用到了AQS AQS的核心思想就是给予一个等待队列和同步状态来实现的,它的内部使用一个先进先出…

【C语言】循环结构程序设计(第二部分 -- 习题讲解)

前言:昨天我们学习了C语言中循环结构程序设计,并分析了循环结构的特点和实现方法,有了初步编写循环程序的能力,那么今天我们通过一些例子来进一步掌握循环程序的编写和应用。 💖 博主CSDN主页:卫卫卫的个人主页 💞 &am…

提示msvcp140.dll丢失的5个解决方法,msvcp140.dll丢失问题全面分析

在我们的日常生活和工作中,电脑已经成为不可或缺的工具。然而,在使用电脑的过程中,我们经常会遇到各种问题,其中就包括提示 msvcp140.dll 丢失的问题。msvcp140.dll 是 Visual C Redistributable for Visual Studio 2015 的运行时…

动态内存管理<C语言>

✨Blog:🥰不会敲代码的小张:)🥰 🉑推荐专栏:C语言🤪、Cpp😶‍🌫️、数据结构初阶💀 💽座右铭:“記住,每一天都是一個新的開始&#x1…

微信小程序代驾系统源码(含未编译前端,二开无忧) v2.5

简介: 如今有越来越多的人在网上做代驾,打造一个代驾平台,既可以让司机增加一笔额外的收入,也解决了车主酒后不能开发的问题,代驾系统基于微信小程序开发的代驾系统支持一键下单叫代驾,支持代驾人员保证金…

Python的NumPy库(一)基础用法

NumPy库并不是Python的标准库,但其在机器学习、大数据等很多领域有非常广泛的应用,NumPy本身就有比较多的内容,全部的学习可能涉及许多的内容,但我们在这里仅学习常见的使用,这些内容对于我们日常使用NumPy是足够的。 …

2023.10.5 文件操作IO 经典例题

目录 例题一 例题二 例题一 扫描指定目录,并找到名称中包含指定字符的所有普通文件(不包含目录),并且后续询问用户是否删除该文件 代码如下: package io;import java.io.File; import java.util.Scanner;//扫描指定目…

RSA攻击:模数分解

目录 一、模数分解总览 1.1直接分解法 1.2费马分解与Pollard_rho分解 1.3公约数分解 1.4其他模数分解 二、实战特训 2.1[黑盾杯 2020]Factor 2.2[GWCTF 2019]babyRSA 2.3[LitCTF 2023]yafu (中级) 2.4[RoarCTF 2019]RSA 2.5[CISCN 2022 西南]rsa 三、总结 一、模数分解总览 …

使用idea 中的rest 将 git 合并部分分支代码到主分支

需求:当要将dev的分支中的部分代码合并到test分支时,又不想把dev的全部代码合并到test分支 例如dev分支已经提交了 demo1到4,到想把demo1-3的代码合并到test分支,demo4暂时不合并 可以使用idea的reset 功能满足以上需求 1首先切…

Seata 源码篇之AT模式启动流程 - 中 - 03

Seata 源码篇之AT模式启动流程 - 中 - 03 数据源代理会话代理锁定查询执行器本地事务提交本地事务回滚 更新执行器删除执行器插入执行器 小节 本系列文章: Seata 源码篇之核心思想 - 01Seata 源码篇之AT模式启动流程 - 上 - 02 数据源代理 当我们的数据源被代理后&#xff0c…

.Net开源迁移框架FluentMigrator的使用。

在实际的开发过程中,经常会遇到数据库结构变动,比如新增表、删除表;已有的表新增字段,删除字段;修改字段属性等等。而且需要开发环境、测试环境和生产环境进行同步。如果使用的是EF,还是挺方便的。而非EF环…

PyTorch入门之【tensor】

目录 tensor的创建tensor的相关信息tensor的运算 tensor的创建 1.手动创建 import torch test1torch.tensor([1,2,3])#一维时为向量 test2torch.tensor([[1,2,3]])#二维时为矩阵 test3torch.tensor([[[1,2,3]]])#三维及以上统称为tensor print(test1) print(test2) print(tes…

【Linux】线程详解完结篇——信号量 + 线程池 + 单例模式 + 读写锁

线程详解第四篇 前言正式开始信号量引例信号量的本质信号量相关的四个核心接口生产消费者模型用环形队列实现生产者消费者模型基于环形队列的生产消费模型的原理代码演示单生产者单消费者多生产者多消费者 计数器的意义 线程池基本概念代码 单例模式STL,智能指针和线程安全STL中…

文心一言 VS 讯飞星火 VS chatgpt (106)-- 算法导论10.1 4题

四、用go语言,重写 ENQUEUE 和 DEQUEUE 的代码,使之能处理队列的下溢和上溢。 文心一言: 在 Go 语言中,我们可以使用切片来实现队列。下面是如何实现 ENQUEUE 和 DEQUEUE 操作,同时处理队列的下溢和上溢的情况&#…

git提交代码的流程

1.拉取代码 当你进入了一家公司就需要拉去公司的代码进行开发,此时你的项目小组长会给你个地址拉代码, git clone 公司项目的地址 此时如果不使用了这个方式拉去代码,拉去的是master分支上的代码,但是很多数的情况下,公司的项目可能会在其它的分支上,因此到公…

经典算法-----汉诺塔问题

前言 今天我们学习一个老经典的问题-----汉诺塔问题,可能在学习编程之前我们就听说过这个问题,那这里我们如何去通过编程的方式去解决这么一个问题呢?下面接着看。 汉诺塔问题 问题描述 这里是引用汉诺塔问题源自印度一个古老的传说&#x…

Python3数据科学包系列(一):数据分析实战

Python3中类的高级语法及实战 Python3(基础|高级)语法实战(|多线程|多进程|线程池|进程池技术)|多线程安全问题解决方案 Python3数据科学包系列(一):数据分析实战 Python3数据科学包系列(二):数据分析实战 认识下数据科学中数据处理基础包: (1)NumPy 俗话说: 要学会跑需先…