Java——关于String(字符串)
String s2 = new String("abc");//创建两个对象 一个new 一个字符串对象在堆内存中。
boolean b = (s==s2);//b为false 比较的是地址
boolean b2 = s.equals(s2);//b2为true 重写了Object的equals方法, 比较的是俩个字符串的内容。
String e = new String();//等价于String e = "";
String本身是一个类,在String类中定义的构造方法:public String (String original) 可以接收一个String类的对象,并重新实例化String对
象,String还可以采用直接赋值的方式进行对象的实例化
一个字符串是使用 “”括起来的 那么一个字符串的常量实际上本身就属于String的一个匿名对象
String str = "hello" ; 与 String str = new String("hello"); 有什么区别?、
String str="hello " 如果内存已经为"hello"分配了内存空间,那么Str只要指向"hello"内存对象地址;
String str = new String("hello"); 内存中重新分配一块内存区域给"hello",str指向"hello",也就是内存中有两个hello的对象了,而且指向的地址不一样
//获取俩个字符串中 的 最大相同字串
获取 一个字符串的所有字串: 按照其长度去找 从最大长度 找到最小长度
private static String getMaxSubstring(String s1, String s2)
{
// TODO Auto-generated method stub
for (int i = 0; i < s2.length(); i++)
{
for(int a=0,b=s2.length()-i; b!=s2.length()+1; a++,b++)
{
String sub = s2.substring(a, b);
if(s1.contains(sub))
{
System.out.println(sub);
return sub;
}
}
}
return null;
}
========================================================================================
/*
* StringBuffer:其实就是字符串缓冲区。 用于存储数据的容器。
* 特点:
*
1.长度是可变的。
*
2.可以存不同类型的数据。
*
3.最终要转成字符串进行使用
* 是一个容器对象,具备的功能:
*
添加:
*
append(data)返回类型是String
*
insert(index, data)
*
删除:
*
delete(start, end):包含头,不包含尾
*
deleteCharAt(int index):删除指定位置上的元素
*
查找
*
char charAt(index);
*
int indexOf(string);
*
int lastIndexOf(string);
*
修改:
*
StringBuffer replace(start, end,string);
*
void setCharAt(index, char);
*
* StringBuffer是线程同步的,通常用于多线程。
* StringBuilder是线程不同步的。通常用于单线程的,他的出现提高了效率
*
l */
版权声明:本文为博主原创文章,未经博主允许不得转载。
Java——关于String(字符串)的更多相关文章
- java 判断String字符串是不是json数据
java 判断String字符串是不是json数据 CreationTime--2018年8月24日18点23分 Author:Marydon JSONObject jo = null; try ...
- < java.lang >-- String字符串
java中用String类进行描述.对字符串进行了对象的封装.这样的好处是可以对字符串这种常见数据进行方便的操作.对象封装后,可以定义N多属性和行为. 如何定义字符串对象呢?String s = &q ...
- 浅谈java的String字符串
一提到java的String首先想到的应该就是它的不可变性,其原因是因为String类的内部是使用一个private final char value[]的字符数组来存储数据,本身没有相应的set方法 ...
- java中String字符串
一.定义String字符串 String字符串和char字符不同,char使用单引号,只能表示一个字符,字符串就是一段文本.String是个类.这个类使用final修饰,所以这个类是不可以继承扩充和修 ...
- JAVA中String(字符串)课堂总结
一:Java编译器中关于字符串自动优化 例子一: 源代码: public class StringPool { public static void main(String args[]) { Str ...
- Java中String字符串常量池总结
最近到广州某建站互联网公司面试,当时面试官问假设有两个字符串String a="abc",String b = "abc";问输出a==b是true还是fals ...
- java中String字符串的==解析
今天不知道怎么看了下string的==的问题,本身我觉得我这个水平去判断几个字符串相等还能出问题?呵呵,真的出了大问题,根本原因在于对java字节码的不了解. 首先,==运算符比较的是两个变量所指向的 ...
- Java中String字符串常量池
首先看一个例子,通过这个例子更能快速理解String常量池 public static void main(String[] args) { String a = "ab"; St ...
- JAVA中String字符串比较equals()和equalsIgnoreCase()的区别
标签: equals和equalsIgnoreC 2012-11-11 16:03 65644人阅读 评论(0) 收藏 举报 分类: JAVA(3) 1.使用equals( )方法比较两个字符串是 ...
- java中String字符串的替换函数:replace与replaceAll的区别
例如有如下x的字符串 String x = "[kllkklk\\kk\\kllkk]";要将里面的“kk”替换为++,可以使用两种方法得到相同的结果 replace(CharSe ...
随机推荐
- 摘自:java夜未眠之java学习之道
目前Java可以说是产业界和学术界最热门的语言,许多读者都很急切想把Java学好.除非是武侠小说中的运功传送内力的方式,否则花上一段时间苦学是免不了的.花时间,不打紧,就是怕方法错误,事倍功半.我认为 ...
- 设置navigation baritem方法
UIButton *RightBtn=[UIButton buttonWithType:UIButtonTypeRoundedRect]; [RightBtn setImage:[UIImage im ...
- hdu 2075
PS:水得不能再水..刚开始还以为是大数..要用到快速幂...谁知道想太多...就普通int型.. 代码: #include "stdio.h" int main(){ int a ...
- hdoj-2033
A+B系列: #include "stdio.h"int main(){ int a[3],b[3],c[3],i,n,j,flag; while(~scanf("%d& ...
- mongo db 分享 ppt
在公司内部的mongo db的ppt.初步进阶 http://files.cnblogs.com/files/yuhan-TB/mongoDB.pptx
- vijos 1907 飞扬的小鸟
我心里毫无波动甚至还有点想笑. WTF WTF WTF WTF WTF WTF WTF GTMD调了一天什么鬼啊. 原来更新的范围有讲究啊. #include<iostream> #inc ...
- HDOJ-三部曲一(搜索、数学)-1003-Curling 2.0
Curling 2.0 Time Limit : 2000/1000ms (Java/Other) Memory Limit : 131072/65536K (Java/Other) Total ...
- Drools规则文件结构说明
一.规则文件构成 package(规则文件所在包) import(导入java包) global(规则文件中的"全局变量") function(函数) query(查找) rule ...
- 【LeetCode OJ】Linked List Cycle
Problem link: http://oj.leetcode.com/problems/linked-list-cycle/ We set two pointers: the faster poi ...
- 作业1-我的第一个博客&GuiHub简单练习
自我介绍 姓名:苗中峰(不要问有什么含义,翻着字典取的名,翻到什么字就取了什么字) 性别:男(不解释) ...