Java中的一些基础代码片段_2

=Start=

缘由:

在学习Java的过程中不断用文章进行整理总结(常用功能的Java实现),争取早日能较为熟练的使用Java进行开发。

正文:

参考解答:
1. Java中如何将 Long 型转换成 int/Integer 型

Java中Integer属于不可更改类型,而且Long和Integer没有任何继承关系,所以不能直接转换。否则会报错「java.lang.Long cannot be cast to java.lang.Integer」

注:java.lang.Number 是 Integer,Long 的父类。

2. Java中字符串的常用操作

当对字符串进行修改的操作较多的时候,需要使用 StringBuffer 和 StringBuilder 类。因为和常规的 String 类不同的是,StringBuffer 和 StringBuilder 类的对象能够被多次的修改,并且不产生新的未使用对象。

StringBuilder 类在 Java 5 中被提出,它和 StringBuffer 之间的最大不同在于 StringBuilder 的方法不是线程安全的(不能同步访问)。

由于 StringBuilder 相较于 StringBuffer 有速度优势,所以多数情况下建议使用 StringBuilder 类。然而在应用程序要求线程安全的情况下,则必须使用 StringBuffer 类。

3. 特殊一点的字符串切分

借助:
import com.google.common.base.Splitter;
实现 在切分时,自动去掉空值 的功能。

4. Java中日期字符串格式的校验

5. Java中打印 数组 的3种方法总结

6. Java中打印 map 的方法总结

&

除了这种指定Map类型的方式之外,还可以考虑借助一下泛型(在map元素不是特别多的情况下)来实现。

参考链接:
  • 如上

=END=

声明: 除非注明,ixyzero.com文章均为原创,转载请以链接形式标明本文地址,谢谢!
https://ixyzero.com/blog/archives/3975.html

《Java中的一些基础代码片段_2》上有1条评论

  1. Java执行系统命令的方法和原理
    https://xz.aliyun.com/t/2342
    http://tool.oschina.net/apidocs/apidoc?api=jdk-zh
    http://tool.oschina.net/uploads/apidocs/jdk-zh/java/lang/Process.html

    要构建JSP命令执行后门,首先需要了解Java语言执行系统命令的方法及其原理。通过查阅资料知道:目前Java语言执行系统命令主要通过下面两个类的相关方法实现:
    java.lang.Runtime
    java.lang.ProcessBuilder

    查阅 Java 文档 可以发现,上面两个类,都是对java.lang.Process抽象类的实现。

    Java语言中执行系统命令的方式,简单来说就是由JVM创建一个本机进程,加载对应的指令到进程的地址空间中,然后执行该指令。
    而java.lang.Runtime.getRuntime().exec()和 java.lang.ProcessBuilder.start()方法,其实就是创建一个进程的方法。

    总结一下,Java语言执行系统命令相关类和方法的调用关系表示如下图:
    java.lang.Runtime
    ---> getRuntime().exec()
    java.lang.ProcessBuilder
    ---> start()
    java.lang.ProcessImpl.start()

发表评论

电子邮件地址不会被公开。 必填项已用*标注