韩顺平0基础学java——第22

news2024/11/26 0:27:33

p460-483

常用类

包装类Wrapper

针对8种几种数据类型相应的引用类型——包装类

包装类和基本数据类型的转换

jdk5之前的手动装箱和拆箱:

jdk5之后的自动装箱和拆箱:

三元运算符是一个整体

这个三元运算符里,精度最高的是double,所以是1.0!!

包装类方法 

String和包装类互转:

包装类常用方法:

包装类经典面试题

1.False:两个都是new出来的,不是同一个对象

2.底层都是用的Integer.valueOf:在这个范围内,直接返回值而不是new

范围是-128到127!所以这里是true

3.根据上一题,就是False,因为这个是128,超出了范围。

小结:如果new了那是两个对象,“==”判断的是否为同一个对象!

如果底层都是valueOf,看范围“是否在-128到127之间”,在范围内是比较值,超出后会new

如果比较的一方有基本数据类型,那么就是比值是否相等!!

String类

1.String对象用于保存字符串,也就是一组字符序列

2.字符串常量对象是用双引号括起来的字符序列

3.字符串用的Unicode字符编码,一个字符占两个字节(不管是字母还是汉字)

4.常用构造器

//常用

//其他构造器

String的类图:

实现串行化的意思是可以进行网络传输!

String是final类,不能被继承、。有属性private final char value【】;用于存放字符串内容。

一定要注意,value是一个final类型,一旦赋值后不可修改地址(value是一个引用,不能指向新的内容),但是值是可以修改的。

String赋值

方式一:直接赋值 

String s1 = “mdk”;

这种方式在常量池里寻找mdk数据,如果有那就让s1指向它,如果没有那就创建(创建就获得了地址)。

方式二:调用构造器

String s2 = new String(“mdk”);

这种方式在堆里先开辟空间,开辟后在常量池里寻找,如果有那就从堆里指向常量池(如果没有就创建)。

 intern方法

intern返回的是常量池的地址


创建了一个对象:编译器会优化它,等价于String a = “helloabc”


麻了,c实际上是new出来的...

一共有3个对象。

老韩小结:底层是StringBuilder sb = new StringBuilder(); sb.append(a);sb.append(b); sb是在堆中,并且append是在原来字符串的基础上追加的.

重要规则:String c1 = "ab" + "cd";常量相加,看的是池。String c1 =a+b;变量相加,是在堆中


一到很逆天的题:

0470_韩顺平Java_String对象特性2_哔哩哔哩_bilibili


String常用方法

略,用到了再查吧

String相关的类

1.StringBuffer

1.StringBuffer的直接父类是AbstrctStringBuilder,

2.StringBuffer实现了Serializable,即StringBuffer的对象可以串行化

3、在父类中,AbstractStringBuilder有属性char【】value不是final,该value数组存放字符串内容,引出存放在堆中。

4.StringBuffer是个final类。不能被继承

StringBuffer和String在使用中经常会相互转换,

2.StringBuider

单线程时优先使用StringBuilder

String、StringBuffer和StringBuilder的比较:

结论

这章真的太困了,感觉没学明白。

Math类

Math类是静态类,常用方法:

1.abs绝对值

2.pow求幂:Math.pow(2,4);//2的4次方

3.ceil向上取整:返回该参数的最小整数:3.9返回4.0

4.floor向下取整

5.round四舍五入

6.sqrt开平方

7.random求随机数

        random返回的是0-1之间的一个随机小数(0-1】

8.max、min

Arrays类

排序有点懵逼:0481_韩顺平Java_Arrays排序源码解读_哔哩哔哩_bilibili

今晚争取把这两p看懂就下班

sort方法的使用

默认排序:Arrays.sort[ 传入数组]

定制排序:实现了Comparator接口的匿名内部类,要求实现compare方法!

Arrays.sort(arr,new Comparator(){

//匿名内部类,这里体现了接口编程的一种方式~

        public int compare(Object o1,Object o2){

                Integer i1 = (Integer)o1; 

                Integer i1 = (Integer)o1; 

return n1-n2;}

})

追到sort的源码,发现是二叉树排序。(这是什么?)

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

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

相关文章

机器学习周记(第四十三周:MCformer)2024.6.10~2024.6.16

目录 摘要ABSTRACT1 论文信息1.1 论文标题1.2 论文摘要1.3 论文引言1.4 论文贡献 2 论文模型2.1 问题定义2.2 可逆实例归一化(Reversible Instance Normalization)2.3 混合通道块 (Mixed-Channels Block)2.4 编码器(De…

MPLS VPN一

R1为客户,现在进行一些基本配置,来确保可以通路由 先启动OSPF跑通 在R3上 等一会 现在启动MPLS 对R3 对R4 然后在R2上 再把接口划到空间里面 原来的IP在公网里面,被清除了 然后再配置接口 查看 对R1(相当于客户) …

CrossOver和PD虚拟机谁更强大?CrossOver和PD虚拟机应该怎么选择

在当前的虚拟化技术和应用程序兼容性解决方案中,CrossOver和PD虚拟机(Parallels Desktop)都是备受用户喜爱的选择。对于需要在非原生系统上运行应用程序的用户而言,选择合适的工具尤为重要。那么,CrossOver和PD虚拟机谁…

虚表-在成员函数前面加上virtual后发生了什么事情???

从上图得出: 子类继承的父类的虚表指针吗? 答:是的。 子类和父类是同一个虚表还是不同的虚表? 答:不同的虚表,倘若是同一个当子类进行覆盖的时候,父类的虚表会丢失。 下面有一些方法来观察类…

【linux】认识“文件”的本质,理解“文件系统”的设计逻辑,体会linux优雅的设计理念

⭐⭐⭐个人主页⭐⭐⭐ ~~~~~~~~~~~~~~~~~~ C站最❤❤❤萌❤❤❤博主 ~~~~~~~~~~~~~~~~~~~ ​♥东洛的克莱斯韦克-CSDN博客♥ ~~~~~~~~~~~~~~~~~~~~ 嗷呜~ ✌✌✌✌ 萌妹统治世界~ 🎉🎉🎉🎉 ✈✈✈✈相关文章✈✈✈✈ &#x1f4a…

虚函数表共享和生成

每个类有不同的虚表,相同的类使用相同的虚表 模拟动态绑定的一个过程

【Apache Doris】周FAQ集锦:第 6 期

【Apache Doris】周FAQ集锦:第 6 期 SQL问题数据操作问题运维常见问题其它问题关于社区 欢迎查阅本周的 Apache Doris 社区 FAQ 栏目! 在这个栏目中,每周将筛选社区反馈的热门问题和话题,重点回答并进行深入探讨。旨在为广大用户和…

C++11左值、右值

知识回顾,详解引用 简单概括,引用就是给已存在对象取别名,引用变量与其引用实体共用同一块内存空间 左右值区分 注意:不一定左边的都是左值,右边的都是右值 左边的也可能是右值,等号右边的也可能是左值 …

大数据工程师如何做到数据可视化?

好的数据可视化作品都是通过不断的数据对比分析实战出来的。 今天给大家带来一篇大数据工程师干货,从多角度解析做数据可视化的重要性,并解读一些适用的应用场景。大数据工程师们刷到这篇文章时一定要进来看看,满满的干货。 目录 1. 什么是数…

中望CAD 2025 (ZW3D2025) 简体中文修改版

名称:中望CAD 2025 (ZW3D2025) 简体中文修改版 描述:一款三维CAD设计工具,运行破解补丁ZW3D2025-2024-Patch执行修补。 链接:夸克网盘分享 📁 大小:3.2GB 🏷 标签:#PC软件 #CAD #设…

为什么笔记本电脑触控板不工作?这里有你想要的答案和解决办法

序言 你的笔记本电脑触控板停止工作了吗?值得庆幸的是,这个令人沮丧的问题通常很容易解决。以下是笔记本电脑触控板问题的最常见原因和修复方法。 触控板被功能键禁用 大多数(如果不是全部的话)Windows笔记本电脑都将其中一个功能键用于禁用和启用笔记本电脑触控板。按键…

【Arthas案例】某应用依赖两个GAV不同但包含两个相同全限定类名StaticLoggerBinder,引起log4j.Level类找不到异常

3分钟内解决问题 两个不同的GAV依赖冲突,包含相同全限定类名,引起ClassNotFoundException Maven依赖的三坐标体系GAV(G-groupId,A-artifactId,V-version) 【案例1】某应用依赖两个GAV不同的jar,但包含两个相同全限定类…

Jmeter多个请求按照比例并发压测的几种方式

🍅 视频学习:文末有免费的配套视频可观看 🍅 点击文末小卡片 ,免费获取软件测试全套资料,资料在手,涨薪更快 一、需求 在压测的过程中,为了能够压测整个链路,通常需要多个接口进行并…

OpenAI Assistants API:如何使用代码或无需代码创建您自己的AI助手

Its now easier than ever to create your own AI Assistant that can handle a lot of computing tasks for you. See how you can get started with the OpenAI AI Assistant API. 现在比以往任何时候都更容易创建您自己的AI助手,它可以为您处理许多计算任务。了…

微信公众号打通与登录的实现

今天实现一下与微信公众号进行对接,通过扫描二维码的方式来进行注册与登录,获取用户的微信唯一标识作为用户的username,下面我们开始编写。 骨架建立: 建包: 第一步还是先将骨架建好,与网关骨架差不多&a…

树莓派4B_OpenCv学习笔记9:图片的腐蚀与膨胀

今日继续学习树莓派4B 4G:(Raspberry Pi,简称RPi或RasPi) 本人所用树莓派4B 装载的系统与版本如下: 版本可用命令 (lsb_release -a) 查询: Opencv 版本是4.5.1: 图像的膨胀与腐蚀一般用于灰度图或者二值图,今日便来学习…

基于python-CNN卷积网络训练识别牛油果和猕猴桃-含数据集+pyqt界面

代码下载地址: https://download.csdn.net/download/qq_34904125/89383066 本代码是基于python pytorch环境安装的。 下载本代码后,有个requirement.txt文本,里面介绍了如何安装环境,环境需要自行配置。 或可直接参考下面博文…

目前市面上DIY高端空心耳机壳使用的透明原材料是什么?

目前市面上DIY高端空心耳机壳使用的透明原材料是什么? DIY制作耳机壳的UV树脂胶是一种单组份、通过紫外线光固化的胶粘剂,具有低能量固化、收缩低、发热量低、高透明、耐盐酸、耐黄变好、高硬度、韧性好、成型好等特点。这种胶粘剂非常适合用于制作耳机壳…

Redis 主从集群 哨兵原理

一. Redis 主从集群 1.1 基本概念 主从架构:Redis主从集群采用“一主多从”的架构模式,其中主节点(Master)负责处理客户端的读写请求,而从节点(Slave)则负责处理读请求。这种读写分离的设计使…

Pytest 读取excel文件参数化应用

本文是基于Pytest框架,读取excel中的文件,传入页面表单中,并做相应的断言实现。 1、编辑媒体需求 首先明确一下需求,我们需要对媒体的表单数据进行编辑,步骤如下: 具体表单如下图所示 1、登录 2、点击我…