当前位置: 首页 > news >正文

学习笔记 韩顺平 零基础30天学会Java(2024.8.6)

P471 String对象特性2

      数组默认情况下是放到堆里面的

      只要调用一个方法就会产生一个新栈,因为是在主方法里创建对象的,所以对象是在栈里面,而str ch这些都应该在堆里面,栈里的对象指向堆中的str ch。这一题很像学C语言的时候遇到的形参和实参问题,形参变化会不会导致实参的变化

P472 String常用方法1

P473 String常用方法2

      s1.replace()方法执行后,对s1本身没有影响,返回结果才是替换过的

P474 String常用方法3

P475 StringBuffer结构剖析

      可变长度是指StringBuffer的数组不是final类型的

      对于第二点,StringBuffer的内存方式和数组的类似。StringBuffer只有当内存不够时才会更新地址

P476 StringBuffer转换

      第一个构造器里的数组value,是父类的value

      第四个构造器得到的数组长度是str.length()+16

P477 StringBuffer方法

      append方法会影响原来的,而且不管加进去的是什么类型,最后得到的结果都是StringBuffer

      delete、replace、insert方法会影响原来的,范围是前闭后开

      replace方法可以被替代的和替代的长度不一样

P478 StringBuffer练习

      第一个输出长度为四,是因为经过追源码之后,最后的处理是将null转化为内容为null这四个字符的数组

      倒数第二行中,因为str是null,所以str.length()就是null.length(),因此会出现空指针异常

      关键:先有小数点找到第一个位置,利用循环,不断往前推三位,注意要先找到要写小数点的位置,再添加小数点

      代码见price

P479 StringBuilder结构剖析

      StringBuilder可以看成StringBuffer的简易版,他们的区别在于StringBuilder的方法没有做同步(synchronized)的处理,就是互斥,不是线程安全的,因此适用于单线程

P480 StringBuilder应用

      第二点,复用率高是指,常量池中的一个字符串常量,可以被多个对象指向

P481 Math方法

      Math中的方法通常都是静态的,可以直接通过类名调用

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 【Material-UI】File Upload Button 组件详解
  • 如何判断IP地址属于住宅IP还是机房IP
  • C语言典型例题27
  • 【链表OJ】常见面试题 2
  • MySQL主从服务器
  • 书生大模型学习笔记3 - 书生开源大模型链路体系
  • Java语言程序设计——篇十一(6)
  • 密码学基础-身份认证
  • PostgreSQL 15
  • 【LeetCode每日一题】2024年8月第一周(上)
  • 【面试高频,必知必会】OpenGL渲染流程
  • (javaweb)Http协议
  • vue3学习day03-vue3的生命周期、父子通信、模版引用、defineExpose
  • 下一个更大元素(单调栈解)
  • 【Pytest 测试报告完整模板:从异常处理到日志记录与截图】
  • [原]深入对比数据科学工具箱:Python和R 非结构化数据的结构化
  • 2018一半小结一波
  • 3.7、@ResponseBody 和 @RestController
  • 30秒的PHP代码片段(1)数组 - Array
  • Angular4 模板式表单用法以及验证
  • canvas 五子棋游戏
  • HTTP请求重发
  • MySQL用户中的%到底包不包括localhost?
  • python 学习笔记 - Queue Pipes,进程间通讯
  • Python代码面试必读 - Data Structures and Algorithms in Python
  • react-core-image-upload 一款轻量级图片上传裁剪插件
  • Vim 折腾记
  • Vue.js源码(2):初探List Rendering
  • 笨办法学C 练习34:动态数组
  • 闭包--闭包作用之保存(一)
  • 基于Android乐音识别(2)
  • 配置 PM2 实现代码自动发布
  • 实习面试笔记
  • 手写双向链表LinkedList的几个常用功能
  • 吴恩达Deep Learning课程练习题参考答案——R语言版
  • 一个项目push到多个远程Git仓库
  • PostgreSQL之连接数修改
  • 浅谈sql中的in与not in,exists与not exists的区别
  • ​ArcGIS Pro 如何批量删除字段
  • ​LeetCode解法汇总2808. 使循环数组所有元素相等的最少秒数
  • $HTTP_POST_VARS['']和$_POST['']的区别
  • (1)(1.13) SiK无线电高级配置(五)
  • (2021|NIPS,扩散,无条件分数估计,条件分数估计)无分类器引导扩散
  • (24)(24.1) FPV和仿真的机载OSD(三)
  • (delphi11最新学习资料) Object Pascal 学习笔记---第8章第2节(共同的基类)
  • (第27天)Oracle 数据泵转换分区表
  • (二刷)代码随想录第16天|104.二叉树的最大深度 559.n叉树的最大深度● 111.二叉树的最小深度● 222.完全二叉树的节点个数
  • (附源码)spring boot网络空间安全实验教学示范中心网站 毕业设计 111454
  • (附源码)springboot掌上博客系统 毕业设计063131
  • (论文阅读23/100)Hierarchical Convolutional Features for Visual Tracking
  • (三分钟了解debug)SLAM研究方向-Debug总结
  • (十一)c52学习之旅-动态数码管
  • (使用vite搭建vue3项目(vite + vue3 + vue router + pinia + element plus))
  • (算法)区间调度问题
  • (一)80c52学习之旅-起始篇