String类的用法
练习如何创建一个类。
package create;
public class Newstring {
String aa;
public Newstring() {
// TODO Auto-generated constructor stub
}
public Newstring(char a[]){
aa=new String(a);
}
public Newstring(char a[],int offset,int length){
aa=new String(a,offset,length);
}
public Newstring(String a){
// aa=new String(a);//可不可以让两个字符串直接相等呢?可以
aa=a;
}
public void printString(){
System.out.println("字符串是"+aa);
}
}
然后,关于String类的一大堆用法就出来了。
package create;
public class Usestring {
public Usestring() {
// TODO Auto-generated constructor stub
char c[]={'t','o','m','c','a','t'};
Newstring a=new Newstring(c,0,4);
a.printString();
String s="bury me in satin";
Newstring b=new Newstring(s);//.toCharArray(),0,4);
b.printString();
}
public void show(String a,String b,int begin,int end){
int length1=a.length();
int where1=a.indexOf(b);
int where2=a.lastIndexOf(b);
char c1=a.charAt(begin);
String str1=a.trim();//忽略前导空格和尾部空格
String str2=a.toUpperCase();
String str3=a.replaceAll("abc", "123");
String str4=a.substring(begin, end);
boolean be=a.startsWith(" ");
boolean en=a.endsWith("iop");
boolean issame=a.equalsIgnoreCase(b);
int cp="abc".compareToIgnoreCase(b);
String[] str5=a.split("bc");
System.out.println("字符串长度"+length1+"\n"+
"找到字符串位置(匹配)"+where1+" "+where2+"\n"+
"在"+(begin+1)+"处"+c1+"\n"+
str1+" \n"+str2+" \n"+str3+" \n"+str4+"\n"+
be+"\n"+en+"\n"+issame+"\n"+cp+"\n");
for(int i=0;i<str5.length;i++){
System.out.println(" "+str5[i]);
}
}
}
这个里面还有个判断String对象是否相等的用法,一般,判断String对象都是用equals()方法,而不用"=="比较运算符。
原因是什么呢?
假设有两个基本数据类型,我们都知道这是可以用equals判断的,可是String是对象啊,是不一样滴。
基本数据类型地址里面放的就是数据,比比就知道是什么了,而,对象的内存地址里面放的是引用,私以为用c的思想来说就是指针,指到对象放的地方(可以这么腹诽,程度太低,按着这个理解可以,真实情况不知道哦)。
那么比较String类的对象就只能用String类重写Object类的equals方法了,他会深入到本质的判断对象的内容是否一样的呢。
不扯太多,大牛的博客写得超级好,自己百度吧,这个挺重要的哦。
主类
package mainfunction; import create.*;
//import create.Newstring;
public class Main { /**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Usestring us=new Usestring();
us.show(" qweabcrty abcuiop", "abc", 0, 9);
} }
String类的用法的更多相关文章
- 标准C++中的string类的用法总结
标准C++中的string类的用法总结 相信使用过MFC编程的朋友对CString这个类的印象应该非常深刻吧?的确,MFC中的CString类使用起来真的非常的方便好用.但是如果离开了MFC框架,还有 ...
- VC++ 标准C++中的string类的用法总结
相信使用过MFC编程的朋友对CString这个类的印象应该非常深刻吧?的确,MFC中的CString类使用起来真的非常的方便好用.但是如果离开了MFC框架,还有没有这样使用起来非常方便的类呢?答案是肯 ...
- [C++][语言语法]标准C++中的string类的用法总结
转自:http://www.cnblogs.com/xFreedom/archive/2011/05/16/2048037.html 要想使用标准C++中string类,必须要包含 #include ...
- 标准C++中string类的用法
转自博客园:http://www.cnblogs.com/xFreedom/archive/2011/05/16/2048037.html 相信使用过MFC编程的朋友对CString这个类的印象应该非 ...
- 标准C++中的string类的用法总结(转)
http://www.cnblogs.com/xFreedom/archive/2011/05/16/2048037.html 相信使用过MFC编程的朋友对CString这个类的印象应该非常深刻吧?的 ...
- 【C++】C++中的string类的用法总结
相信使用过MFC编程的朋友对CString这个类的印象应该非常深刻吧?的确,MFC中的CString类使用起来真的非常的方便好用.但是如果离开了MFC框架,还有没有这样使用起来非常方便的类呢?答案是肯 ...
- string类的用法笔记
要想使用标准C++中string类,必须要包含 #include <string>// 注意是<string>,不是<string.h>,带.h的是C语言中的头文件 ...
- [转]标准C++中的string类的用法总结
原文地址:http://www.cnblogs.com/xFreedom/archive/2011/05/16/2048037.html 相信使用过MFC编程的朋友对CString这个类的印象应该非常 ...
- 标准C++中string类的用法总结
相信使用过MFC编程的朋友对CString这个类的印象应该非常深刻吧?的确,MFC中的CString类使用起来真的非常的方便好用.但是如果离开了MFC框架,还有没有这样使用起来非常方便的类呢?答案是肯 ...
随机推荐
- 用列主元消去法分别解方程组Ax=b,用MATLAB程序实现(最有效版)
数值分析里面经常会涉及到用MATLAB程序实现用列主元消去法分别解方程组Ax=b 具体的方法和代码以如下方程(3x3矩阵)为例进行说明: 用列主元消去法分别解方程组Ax=b,用MATLAB程序实现: ...
- TW实习日记:第13天
昨天困扰的问题终于解决了.因为是百度地图api提供的函数,所以这个解决办法并不适用于所有异步请求,仅仅针对百度地图api的调用接口函数和回调函数.有两种解决方法可以解决百度地图api中常出现的请求回调 ...
- php redis和java混用问题
目前项目是 一个php 一个java 共用一套 redis key value 也都一样, java 使用 gson 解析json 会将php 设置的json里面看 {"a&q ...
- 二:HDFS 命令指南
命令具体选项请参考: http://hadoop.apache.org/docs/r2.6.3/hadoop-project-dist/hadoop-hdfs/HDFSCommands.html ...
- 官方文档 恢复备份指南二 Getting Started with RMAN
本章对RMAN进行基本的熟悉和了解 1.Overview of the RMAN Environment RMAN运行时需要的最小环境: target database ...
- Daily Scrum 9
今天我们的开会内容有一下部分: Part 1:讨论当前遇到的困难 Part 2:明天的任务分工 ◆Part 1 当前的困难 由于之前我们得到的学长的文件并不完整,导致我们无法打开,在和老师进行积极沟通 ...
- PHP 签到,与时间获取,数组长度获取
本文实例讲述了php实现签到功能的方法.分享给大家供大家参考,具体如下:首先我在数据库里建了两张表,一个是用户的积分表,一个是签到状态表,分来用来记录用户的积分数和先到状态 在用户签到状态表中我们有一 ...
- JavaScript初探系列之面向对象
面向对象的语言有一个标志,即拥有类的概念,抽象实例对象的公共属性与方法,基于类可以创建任意多个实例对象,一般具有封装.继承.多态的特性!但JS中对象与纯面向对象语言中的对象是不同的,ECMA标准定义J ...
- [core python programming]chapter 7 programming MS office
excel.pyw会有问题,解决如下: 因为python3x中没有tkMessageBox模块,Tkinter改成了tkinter你可以查看你的py当前支持的模块.在交互式命令行下输入>> ...
- lintcode-143-排颜色 II
143-排颜色 II 给定一个有n个对象(包括k种不同的颜色,并按照1到k进行编号)的数组,将对象进行分类使相同颜色的对象相邻,并按照1,2,...k的顺序进行排序. 注意事项 You are not ...