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框架,还有没有这样使用起来非常方便的类呢?答案是肯 ...
随机推荐
- Java开发工程师(Web方向) - 01.Java Web开发入门 - 第5章.Git
第5章--Git 版本控制简介 VCS (version control system) 版本控制系统:记录若干文件的修订记录的系统,帮助查阅/回到某个历史版本 LVCS本地 CVCS集中式(Cent ...
- mysql bin log配置及查看
mysql执行sql可以通过设置mysql bin 日志进行记录查看 mysql bin日志配置如下: log_bin:on log_bin_basename:bin文件路径及名前缀(/var ...
- 了解Python控制流语句——continue 语句
continue 语句用以告诉 Python 跳过当前循环块中的剩余语句,并继续该循环的下一次迭代. 案例(保存为 continue.py): while True: s = input('Enter ...
- python学习笔记03 --------------程序交互与格式化输出
1.读取用户输入内容 语法:input() 例: name = input('你的名字是?) print('你好'+name) 程序会等待用户输入名字后打印:你好(用户输入的名字) 注意:input接 ...
- Vue 编程之路(三)—— Vue 中子组件在父组件的 v-for 循环里,父组件如何调取子组件的事件
(标题的解决方案在第二部分) 最近公司的一个项目中使用 Vue 2.0 + element UI 实现一个后台管理系统的前端部分,属于商城类型. 一.前期思路: 其中在“所有订单”页面,UI 给的设计 ...
- JavaScript 正则
元字符 预定义类 边界 ^在中括号中时,匹配非hello的 str = 'hello world' str.match(/[^hello]/g) //[" ", "w&q ...
- Multi-task Correlation Particle Filter for Robust Object Tracking--论文随笔
摘要:在这篇论文中,作者提出一种鲁棒视觉跟踪的多任务相关粒子滤波琪跟踪算法(MCPF).作者首先向我们展示了多任务相关滤波器,该滤波器在训练滤波器模板的时候可以学习不同特征之间的联系.本文提出的MCP ...
- 评价cnblogs的用户体验
用户体验: 1.是否提供良好的体验给用户(同时提供价值)? cnbolgs为广大的用户提供了一个学习工作交流的平台,方便大家对各种问题提出自己的看法,并且可以实现不同用户的即时评论,互动交流. ...
- [core python programming]chapter 7 programming MS office
excel.pyw会有问题,解决如下: 因为python3x中没有tkMessageBox模块,Tkinter改成了tkinter你可以查看你的py当前支持的模块.在交互式命令行下输入>> ...
- android入门 — ListView的优化
ListView的运行效率是比较低的,因为在getView()中每次都会将整个布局重新加载一遍,当ListView快速滚动的时候就会成为性能瓶颈. 调用View中的findViewById()方法获取 ...