开发工具分享
  • 首页
  • 计算科学
  • 文化旅游
  • 项目和网站
    • OSSEZ 计算技术
    • USRealEstate 社区
    • 地区文化
    • CWIKI.US
    • BUG.OSSEZ.COM
    • RSS.OSSEZ.COM
Computer Science
Computer Science

Java 包装类和基本类型

Java 语言是一个面向对象的语言,但是 Java 中定义的基本数据类型却是不面向对象的。 有时候我们需要对对象进行操作,有时候我们却需要对基本数据类型进行操作。     基本概念 从 Java 5 开始增加了自动装箱和拆箱。 在基本值和String对象间相互转换,在基本值和String对象之间按不同基数转换,如二进制、八进制和十六进制。 按照 Java 的命名规范,属于对象的数据类型,通常都是以大写字母开头的,基础数据类型是小写字母开头的。 包装类 如果涉及到从基本数据类型到对象数据类型之间的转换的话,就涉及到了包装类。 包装类通常就是在对基础数据类型转换为对象数据类型的时候进行包装用的。 其实就是根据上面的基础数据类型,定义的以大写字母开头的对应的数据类型,在这个数据类型的使用我们可以看成是一个对象就好了。 这个转换过程就称为 装箱 了。 装箱和拆箱 既然有装箱那么就会有拆箱。 拆箱就是将包装数据类型转换为基础数据类型的过程。 Java SE5开始就提供了自动装箱的特性。 Integer i = 10; //装箱 int index = i; //拆箱 因为有自动装箱和拆箱的存在,因此很多时候对数据的定义就简便很多,也提供了不少灵活性。 甚至定义成下面这样也是可以的。 Boolean b = true; 总结 在大部分使用的过程中,知道 Java 具备自动装箱和拆箱的能力就差不多了。 这部分的知识在 Java 1.4 版本的面试过程中通常会被问到,现在问这个问题的已经不多了。 但是不代表你不需要了解,如果你还需要了解更多的内容的话,你就可以读下源代码了解下自动自动装箱和拆箱的机制是什么了。   https://www.ossez.com/t/java/13781

2021年10月28日 0Comments 741Browse 0Like Read more
Computer Science

Java 整型数组转换为 List

要转换为 List ,其实可能很多人都会想到 Arrays.asList 事实上这样也是可以的。 但是这个方法要求你的数组需要使用的是对象。 例如,如果你定义下面 2 个数组的话。 int[] inputArrayA = {3, 7, 1, 2, 8, 4, 5}; Integer[] inputArrayB = {3, 7, 1, 2, 8, 4, 5}; 你只能对 inputArrayB 数组进行转换为 List。 Arrays.asList asList 转换方法。 这个转换就非常简单了,使用下面的代码就可以转换了。 Integer[] inputArrayB = {3, 7, 1, 2, 8, 4, 5}; List<Integer> inListA = Arrays.asList(inputArrayB); stream 下面的的代码是通过 stream 进行转换的。 在转换的同时还对输入数组进行了排序。 int[] inputArrayA = {3, 7, 1, 2, 8, 4, 5}; List<Integer> inList = Arrays.stream(inputArrayA).sorted().boxed().collect(Collectors.toList());   https://www.ossez.com/t/java-list/13780

2021年10月28日 0Comments 863Browse 0Like Read more
Computer Science

Jekyll 运行的时候提示错误 cannot load such file -- webrick (LoadError)

完整的错误信息如下: LinkChecker: [Warning] done in 13.838 seconds. Auto-regeneration: enabled for 'D:/WorkDir/Repository/GitHub/opensearch/documentation-website' ------------------------------------------------ Jekyll 4.2.1 Please append `--trace` to the `serve` command for any additional information or backtrace. ------------------------------------------------ D:/DKits/Ruby/lib/ruby/gems/3.0.0/gems/jekyll-4.2.1/lib/jekyll/commands/serve/servlet.rb:3:in `require': cannot load such file -- webrick (LoadError) from D:/DKits/Ruby/lib/ruby/gems/3.0.0/gems/jekyll-4.2.1/lib/jekyll/commands/serve/servlet.rb:3:in `<top (required)>' from D:/DKits/Ruby/lib/ruby/gems/3.0.0/gems/jekyll-4.2.1/lib/jekyll/commands/serve.rb:179:in `require_relative' from D:/DKits/Ruby/lib/ruby/gems/3.0.0/gems/jekyll-4.2.1/lib/jekyll/commands/serve.rb:179:in `setup' from D:/DKits/Ruby/lib/ruby/gems/3.0.0/gems/jekyll-4.2.1/lib/jekyll/commands/serve.rb:100:in `process' from D:/DKits/Ruby/lib/ruby/gems/3.0.0/gems/jekyll-4.2.1/lib/jekyll/command.rb:91:in `block in process_with_graceful_fail' from D:/DKits/Ruby/lib/ruby/gems/3.0.0/gems/jekyll-4.2.1/lib/jekyll/command.rb:91:in `each' from D:/DKits/Ruby/lib/ruby/gems/3.0.0/gems/jekyll-4.2.1/lib/jekyll/command.rb:91:in `process_with_graceful_fail' from D:/DKits/Ruby/lib/ruby/gems/3.0.0/gems/jekyll-4.2.1/lib/jekyll/commands/serve.rb:86:in `block (2 levels) in init_with_program' from D:/DKits/Ruby/lib/ruby/gems/3.0.0/gems/mercenary-0.4.0/lib/mercenary/command.rb:221:in `block in execute' from D:/DKits/Ruby/lib/ruby/gems/3.0.0/gems/mercenary-0.4.0/lib/mercenary/command.rb:221:in `each' from D:/DKits/Ruby/lib/ruby/gems/3.0.0/gems/mercenary-0.4.0/lib/mercenary/command.rb:221:in `execute' from D:/DKits/Ruby/lib/ruby/gems/3.0.0/gems/mercenary-0.4.0/lib/mercenary/program.rb:44:in `go' from D:/DKits/Ruby/lib/ruby/gems/3.0.0/gems/mercenary-0.4.0/lib/mercenary.rb:21:in `program' from D:/DKits/Ruby/lib/ruby/gems/3.0.0/gems/jekyll-4.2.1/exe/jekyll:15:in `<top (required)>' from D:/DKits/Ruby/bin/jekyll:23:in `load' from D:/DKits/Ruby/bin/jekyll:23:in `<main>'     问题和解决 根据官方的项目的说明: 这是因为: 从 Ruby 3.0 开始 webrick 已经不再绑定到 Ruby 中了,请参考链接: Ruby 3.0.0 Released 中的说明。 webrick 需要手动进行添加。 添加的命令为: bundle add webrick 后就可以解决这个问题了。   https://www.ossez.com/t/jekyll-cannot-load-such-file-webrick-loaderror/13779

2021年10月27日 0Comments 764Browse 0Like Read more
Computer Science

RubyInstaller 在 Windows 环境下的安装

请访问:Downloads 界面中的内容来获得必要的版本。 下载安装版本 如下图的界面,下载最新的版本。     双击运行进行安装 双击运行后,需要同意许可协议,然后下一步。 设置安装路径 可以根据你的需要设置安装路径。 选择安装选项 在这里,全部使用默认的安装选项就可以了。 安装进程 在安装的过程中,还是需要一些时间的。 耐心等待,如果你的 C 盘空间不够的话,建议安装到不同的路径下面。 安装完成 在这里,安装引导程序已经完成了。 运行命令行工具 随后将会运行命令行工具。 这个命令行工具就是 ridk install 了 如果你不知道选什么的话,直接回车就可以了。   https://www.ossez.com/t/rubyinstaller-windows/13778

2021年10月27日 0Comments 830Browse 0Like Read more
Computer Science

Docker Desktop 如何运行第一个 Docker 项目

Docker Desktop 安装后的界面是这样的。     你可能会有点困惑,如何运行第一个 Docker 项目。 其实上面的界面中已经告诉你运行的命令行工具了: docker run -d -p 80:80 docker/getting-started 你可以在 Windows 的 PS 下运行这个,也可以在 windows terminal 下运行。 同时有可能你会收到没有在本地找到 docker 镜像的错误。     需要稍等下,等待 pull 的完成。 当 Pull 完成后,你就可以看到容器的启动了。     通过浏览器就可以看到运行的情况。 访问地址为 localhost 端口 80     是不是非常方便就就在你的 Windows 平台上运行起来 Docker 了。   https://www.ossez.com/t/docker-desktop-docker/13775

2021年10月23日 0Comments 755Browse 0Like Read more
Computer Science

Teams 的 Channel 删除后无法再重建

有时候,你发现你的 Teams 在创建 Channel 后对 Channel 删除了,但是你却没有办法创建一个名称相同的 Channel。 这是因为这个时候的 Channel 没有完全删除,你需要具有管理员权限来进行删除。     这个需要管理员在后面选择允许成员删除和恢复 Channel。 在默认情况下,这个选项是没有选择的。   https://www.ossez.com/t/teams-channel/13770

2021年10月12日 0Comments 717Browse 0Like Read more
Computer Science

还在为 Slack 和 Teams 纠结吗

简单来说,Slack 通过信息流服务整合其他工具打造企业管理生态,帮助企业做流程管理,提高效率。 Teams 是微软从无纸化办公(office)走向团队协作式办公的一种升级。 用过一段时间的 Slack 和 Teams,随着 Teams 的不断升级,在功能和使用上感觉已经超过了 Slack 。 外观和感觉 Slack和Teams桌面应用程序都有非常轻松的导航界面,以消息传递为中心。不过,他们有一些风格上的差异。Slack有一种自由、宽松的感觉,有些人喜欢,但有些人可能认为有点混乱。Teams 有一个模糊的企业外观,感觉更精简但通用。 其中,Slack 提供了更多的定制选项,有10种不同的方式来调整侧边栏的外观。相比之下, Teams 只提供三种定制选项:默认(浅色)、深色和高对比度。 实际使用 根据实际上我们的使用来看,Slack 的搜索功能往往比较糟糕。 在项目初期,工作不是很多,写作文档也不是很多的情况下可能看不太出来,有时候同事喜欢在聊天中复制张贴一些文档或者源代码。     如果我们要对源代码进行搜索的话,不同的优势就能马上看出来了。 Teams 是微软的产品,和微软的集成度比较高也比较好。 如果你是 Teams 的产品的使用用户的话,使用 Teams 可能会更加理想。 尤其是在 Windows 11 升级后,Teams 已经自动安装到操作系统中了,这个对 Slack 不是一个好消息。     上图就是一个 Windows 11 中集成的 Teams。   https://www.ossez.com/t/slack-teams/13768

2021年10月12日 0Comments 737Browse 0Like Read more
Computer Science

Teams 如何创建一个 Channel

选择 Teams ,然后在出现 Teams 的后面单击 3 个点号。 在弹出的对话框中选择 Add Channel 就可以了。     然后选择需要的私有协议。 同时还需要输入 Channel 的名字和描述。   https://www.ossez.com/t/teams-channel/13769

2021年10月12日 0Comments 763Browse 0Like Read more
Computer Science

IntelliJ IDEA 如何添加编译参数

例如,我们希望添加下面的编译参数到我们的一个 IntelliJ IDEA 项目中: --add-exports java.base/jdk.internal.vm.annotation=ALL-UNNAMED     例如我们可以通过在项目的配置路径中进行添加,添加的模块和参数请参考上图。   https://www.ossez.com/t/intellij-idea/13759

2021年10月05日 0Comments 698Browse 0Like Read more
Computer Science

sun.misc.Contended 提示 cannot find symbol

Contended 在 JDK9 及其后续版本中的问题 sun.misc.Contended 是在JDK8 中引入的,为了解决填充问题。 但是大家注意,Contended注解是在包sun.misc,这意味着一般来说是不建议我们直接使用的。 虽然不建议大家使用,但是还是可以用的。 但如果你使用的是JDK9-JDK14,你会发现sun.misc.Contended没有了! 因为JDK9引入了JPMS(Java Platform Module System),它的结构跟JDK8已经完全不一样了。 经过我的研究发现,sun.misc.Contended, sun.misc.Unsafe,sun.misc.Cleaner这样的类都被移到了jdk.internal.**中,并且是默认不对外使用的。 那么有人要问了,我们换个引用的包名是不是就行了? import jdk.internal.vm.annotation.Contended; 上面的问题就是包的路径使用不同的 JDK 已经不在路径中了。     但是,就算你使用了上面的包,你还是会遇到相关的错误: error: package jdk.internal.vm.annotation is not visible @jdk.internal.vm.annotation.Contended ^ (package jdk.internal.vm.annotation is declared in module java.base, which does not export it to the unnamed module) 好,我们找到问题所在了,因为我们的代码并没有定义module,所以是一个默认的“unnamed” module,我们需要把java.base中的jdk.internal.vm.annotation使unnamed module可见。 要实现这个目标,我们可以在javac中添加下面的 flag: --add-exports java.base/jdk.internal.vm.annotation=ALL-UNNAMED 有关在 IDEA 中的添加方法,请参考文章:IntelliJ IDEA 如何添加编译参数   https://www.ossez.com/t/sun-misc-contended-cannot-find-symbol/13758

2021年10月05日 0Comments 1309Browse 0Like Read more
1…8384858687…237
Archives
  • June 2026
  • May 2026
  • April 2026
  • March 2026
  • February 2026
  • January 2026
  • December 2025
  • November 2025
  • October 2025
  • September 2025
  • August 2025
  • July 2025
  • June 2025
  • May 2025
  • April 2025
  • March 2025
  • February 2025
  • January 2025
  • December 2024
  • November 2024
  • October 2024
  • September 2024
  • August 2024
  • July 2024
  • June 2024
  • May 2024
  • April 2024
  • March 2024
  • February 2024
  • January 2024
  • December 2023
  • November 2023
  • October 2023
  • September 2023
  • August 2023
  • July 2023
  • June 2023
  • May 2023
  • April 2023
  • December 2022
  • November 2022
  • October 2022
  • September 2022
  • August 2022
  • May 2022
  • April 2022
  • March 2022
  • February 2022
  • January 2022
  • December 2021
  • November 2021
  • October 2021
  • September 2021
  • August 2021
  • July 2021
  • June 2021
  • May 2021
  • April 2021
  • March 2021
  • February 2021
  • January 2021
  • December 2020
  • November 2020
  • October 2020
  • September 2020
  • August 2020
  • July 2020
  • June 2020
  • May 2020
  • April 2020
  • March 2020
  • February 2020
  • January 2020
  • December 2019
  • November 2019
  • October 2019
  • September 2019
  • August 2019
  • July 2019
  • June 2019
  • May 2019
  • April 2019
  • March 2019
  • February 2019
  • January 2019
  • December 2018
  • November 2018
  • October 2018
  • September 2018
  • August 2018
  • July 2018
  • June 2018
  • May 2018
  • April 2018
  • March 2018
Categories
  • Computer Science (2,367)
    • Confluence (663)
    • Gradle (12)
  • U.S. (514)
  • 文化旅游 (146)

COPYRIGHT © 2020 CWIKIUS. ALL RIGHTS RESERVED.

THEME KRATOS MADE BY VTROIS

湘ICP备2020018253号-1