字符串常量是String类的匿名对象

String str = "Hello";
System.out.println(str.equals("Hello"));//true,字符串对象调用equals()
System.out.println("Hello".equals(str));//true,字符串常量调用equals(),"Hello"是String类的匿名对象

判断某一个用户输入的字符串内容是否等于指定的字符串内容,若采用   字符串对象.equals("内容")   的方式,如果用户没有输入字符串,会出现NullPointerException警告,可以采用   "字符串".equals(字符串对象)   解决这个问题。

String str = null;
str.equals("Hello");//出现NullPointerException
"Hello".equals(str);//equals可自动处理null问题
时间: 2024-10-11 09:01:24

字符串常量是String类的匿名对象的相关文章

java匿名类和匿名对象及this的其他用法

/* 匿名内部类:就是内部类的简写格式. 必须前提:内部类必须继承或者实现一个类或者接口. 匿名内部类其实就是一个匿名 子类对象. 格式:new 父类对象 or 接口(){ 子类内容:(覆盖父类的, 而且可以增加自己的方法) }//相当于将 继承父类 和 new 的过程 写到了一起有某有!很方便有某有! */ class Outer{ int num; public Outer(){ num = 5; } class Inner{ int num; public Inner(){ num = 1

匿名类和匿名对象

https://blog.csdn.net/qq_39728125/article/details/77119736 匿名类和匿名对象 2017年08月12日 16:19:40 qq_39728125 阅读数:628更多 个人分类: java基础 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/qq_39728125/article/details/77119736 匿名类和匿名对象 在Java中有匿名类和匿名对象的概念,有名字可知他们是因为没有

Scanner类、匿名对象、Random类、String类、static静态类、math类和Arrays工具类

一.Scanner类 1.除了八种基本数据类型,其他都是引用类型: 引用类型使用三步骤: 2.Scanner类 引用jdk提供的类,Scanner在java.util包下,不在java.lang包(String)下使用的都要import,查找jdk api,看构造方法创建对象,再看成员方法实现功能: 3.Scanner实现在控制台接收键盘输入的两个Int值相加 4.Scanner类比较找出三个数中最大值 二.匿名对象 1.只使用一次:因为每次new都创建新的对象,再使用时候找不到那个堆内存中的之

常量池之字符串常量池String.intern()

运行时常量池是方法区(PermGen)的一部分. 需要提前了解: 1. JVM内存模型. 2. JAVA对象在JVM中内存分配 常量池的好处 常量池是为了避免频繁的创建和销毁对象而影响系统性能,其实现了对象的共享. - Java的自动装箱中其实就使用到了运行时常量池.详见:Java 自动装箱与拆箱的实现原理 - 还有字符串常量池. 字符串进入到常量池的两种方法: 1. new String()的实例调用intern()方法. ????执行intern()方法时,若常量池中不存在等值的字符串,JV

HDU 1274 展开字符串 (递归+string类)

题目链接:HDU 1274 展开字符串 中文题. 左括号进入DFS函数,右括号return到上一层. 注意return回去的是这个一层递归中的括号中的字母串. AC代码: #include<stdio.h> #include<iostream> #include<string.h> #include<string> using namespace std; char str[300]; bool vis[300]; int len; string dfs(i

Java基础之String类、StringBuffer类、StringBuilder类

String类对象有两种实例化方法 直接赋值:只开辟一块对内存空间,可以自动入池. 构造方法:开辟两块[堆]内存空间,不会自动入池,使用intern()方法手动入池. 任何一个字符串都是String类的匿名对象. 字符串一旦声明则不可以改变,可以改变的只是String类对象的引用. String类可以使用 + 进行字符串的连接操作 StringBuffer类的内容可以进行修改,而String类的内容是不可以修改的. 在String类里面,提供了一个与StringBuffer类比较的方法: pub

C++学习36 string类和字符串

C++大大增强了对字符串的支持,除了可以使用C风格的字符串,还可以使用内置的数据类型 string.string 类处理起字符串来会方便很多,完全可以代替C语言中的 char 数组或 char 指针. 使用 string 类需要包含头文件 <string>,下面我们逐一介绍该类的功能. string 的几种用法: #include <iostream> #include <string> using namespace std; int main(){ string s

String类对象的常用操作及方法

转载自http://blog.csdn.net/fire1175/article/details/1690431 String类对象的常用操作及方法在Java中,String类包含有50多个方法来实现字符串的各种操作,以下介绍一些我们需要经常使用的方法.(1)字符串的连接public String concat(String str) 该方法的参数为一个String类对象,作用是将参数中的字符串str连接到原来字符串的后面. (2)求字符串的长度public int length()返回字串的长

java String 类 基础笔记

字符串是一个特殊的对象. 字符串一旦初始化就不可以被改变. String s = "abc";//存放于字符串常量池,产生1个对象 String s1=new String("abc");//堆内存中new创建了一个String对象,产生2个对象 String类中的equals比较字符串中的内容. 常用方法: 一:获取 1.获取字符串中字符的个数(长度):length();方法. 2.根据位置获取字符:charAt(int index); 3.根据字符获取在字符串中