null的伟大与可怕 之 String字符串方法2

2024-02-19 20:08

本文主要是介绍null的伟大与可怕 之 String字符串方法2,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

null的伟大与可怕 之 String字符串方法2

null的伟大与可怕 之 String字符串 1
http://blog.csdn.net/sunrainamazing/article/details/71591334
null的伟大与可怕 之 String字符串方法2
http://blog.csdn.net/sunrainamazing/article/details/71593030
null的伟大与可怕 之 Optional操作 3
http://blog.csdn.net/sunrainamazing/article/details/71596437

package sun.rain.amazing.strnull;import org.junit.Test;/*** Created by sunRainAmazing on SUN_RAIN_AMAZING* @author sunRainAmazing*/public class MethodNull {private final static String s1 ="null";private final static String s2 = null;private final static String s3 = "";@Testpublic void initVariable(){System.out.println(s1);System.out.println(s2);//对print的引用不明确
//      System.out.print(null);}/***  运行时异常*  contains 方法 内部调用的 时 indexOf 方法**  但是 contains 的返回值是 boolean*      indexOf  的返回值是 int*  String contains 和 indexOf 方法无法对null进行运算** 但是 == 可以*/@Testpublic void testMethod() {//报空指针异常 java.lang.NullPointerException
//      System.out.println(s1.indexOf(s2));
//      System.out.println(s1.contains(s2));// 报空指针异常 java.lang.NullPointerException
//      System.out.println(s2.contains(s1));
//      System.out.println(s2.contains(s1));//报空指针异常  java.lang.NullPointerException
//      System.out.println(s1.indexOf(null));
//      System.out.println(s1.contains(null));//编译错误
//      System.out.println(null.indexOf(s1));
//      System.out.println(null.contains(s1));//      System.out.println(s1.indexOf(s3));//0
//      System.out.println(s1.contains(s3));//true//      System.out.println(null==s1);//false
//      System.out.println(s2==s1);//falseSystem.out.println(s2 == null);//trueSystem.out.println(null == null);//true}/*indexOfpublic int indexOf(String str)返回指定子字符串在此字符串中第一次出现处的索引。返回的整数是this.startsWith(str, k) 为 true 的最小 k 值。参数:str - 任意字符串。返回:如果字符串参数作为一个子字符串在此对象中出现,则返回第一个这种子字符串的第一个字符的索引;如果它不作为一个子字符串出现,则返回 -1。containspublic boolean contains(CharSequence s)当且仅当此字符串包含指定的 char 值序列时,返回 true。参数:s - 要搜索的序列返回:如果此字符串包含 s,则返回 true,否则返回 false抛出:NullPointerException - 如果 s 为 null*/@Testpublic void testMethod1(){//以下结果都是0System.out.println("".indexOf(""));System.out.println(s3.indexOf(""));System.out.println(s3.indexOf(s3));//indexOf方法没有外抛异常声明  null没有length属性//报空指针异常  java.lang.NullPointerException
//      System.out.println(s3.indexOf(s2)); 
//      System.out.println(s3.indexOf(null)); //以下结果全是trueSystem.out.println("".contains(""));System.out.println(s3.contains(""));System.out.println(s3.contains(s3));}/*** equals()方法可以比较null* 但通常将 null作为参数 进行判断* 而不是null.equals(str)  -- 会报 NPE 异常*/@Testpublic void testEquals(){System.out.println(s1.equals(s2));System.out.println(null instanceof String);System.out.println(null+"");System.out.println(null+"" instanceof String);}}

这篇关于null的伟大与可怕 之 String字符串方法2的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/725817

相关文章

QT移植到RK3568开发板的方法步骤

《QT移植到RK3568开发板的方法步骤》本文主要介绍了QT移植到RK3568开发板的方法步骤,文中通过图文示例介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一... 目录前言一、获取SDK1. 安装依赖2. 获取SDK资源包3. SDK工程目录介绍4. 获取补丁包二

Java反转字符串的五种方法总结

《Java反转字符串的五种方法总结》:本文主要介绍五种在Java中反转字符串的方法,包括使用StringBuilder的reverse()方法、字符数组、自定义StringBuilder方法、直接... 目录前言方法一:使用StringBuilder的reverse()方法方法二:使用字符数组方法三:使用自

java导出pdf文件的详细实现方法

《java导出pdf文件的详细实现方法》:本文主要介绍java导出pdf文件的详细实现方法,包括制作模板、获取中文字体文件、实现后端服务以及前端发起请求并生成下载链接,需要的朋友可以参考下... 目录使用注意点包含内容1、制作pdf模板2、获取pdf导出中文需要的文件3、实现4、前端发起请求并生成下载链接使

Golang中拼接字符串的6种方式性能对比

《Golang中拼接字符串的6种方式性能对比》golang的string类型是不可修改的,对于拼接字符串来说,本质上还是创建一个新的对象将数据放进去,主要有6种拼接方式,下面小编就来为大家详细讲讲吧... 目录拼接方式介绍性能对比测试代码测试结果源码分析golang的string类型是不可修改的,对于拼接字

Linux虚拟机不显示IP地址的解决方法(亲测有效)

《Linux虚拟机不显示IP地址的解决方法(亲测有效)》本文主要介绍了通过VMware新装的Linux系统没有IP地址的解决方法,主要步骤包括:关闭虚拟机、打开VM虚拟网络编辑器、还原VMnet8或修... 目录前言步骤0.问题情况1.关闭虚拟机2.China编程打开VM虚拟网络编辑器3.1 方法一:点击还原VM

Android WebView无法加载H5页面的常见问题和解决方法

《AndroidWebView无法加载H5页面的常见问题和解决方法》AndroidWebView是一种视图组件,使得Android应用能够显示网页内容,它基于Chromium,具备现代浏览器的许多功... 目录1. WebView 简介2. 常见问题3. 网络权限设置4. 启用 JavaScript5. D

Java捕获ThreadPoolExecutor内部线程异常的四种方法

《Java捕获ThreadPoolExecutor内部线程异常的四种方法》这篇文章主要为大家详细介绍了Java捕获ThreadPoolExecutor内部线程异常的四种方法,文中的示例代码讲解详细,感... 目录方案 1方案 2方案 3方案 4结论方案 1使用 execute + try-catch 记录

Python中Windows和macOS文件路径格式不一致的解决方法

《Python中Windows和macOS文件路径格式不一致的解决方法》在Python中,Windows和macOS的文件路径字符串格式不一致主要体现在路径分隔符上,这种差异可能导致跨平台代码在处理文... 目录方法 1:使用 os.path 模块方法 2:使用 pathlib 模块(推荐)方法 3:统一使

SpringBoot项目启动错误:找不到或无法加载主类的几种解决方法

《SpringBoot项目启动错误:找不到或无法加载主类的几种解决方法》本文主要介绍了SpringBoot项目启动错误:找不到或无法加载主类的几种解决方法,具有一定的参考价值,感兴趣的可以了解一下... 目录方法1:更改IDE配置方法2:在Eclipse中清理项目方法3:使用Maven命令行在开发Sprin

JAVA SE包装类和泛型详细介绍及说明方法

《JAVASE包装类和泛型详细介绍及说明方法》:本文主要介绍JAVASE包装类和泛型的相关资料,包括基本数据类型与包装类的对应关系,以及装箱和拆箱的概念,并重点讲解了自动装箱和自动拆箱的机制,文... 目录1. 包装类1.1 基本数据类型和对应的包装类1.2 装箱和拆箱1.3 自动装箱和自动拆箱2. 泛型2