review10
public int indexOf(String s);
字符串的索引位置时从0开始的(只有一个参数时),从当前字符串的头开始检索字符串s,并返回首次出现s的索引位置。如果没有检测到字符串s,该方法返回的值是-1。字符串调用indexOf(String s, int startpoint)方法从当前字符串的startpoint位置处开始继续检索字符串s,并返回首次出现s的索引位置。如果没有检索到s,返回-1。
public String substring(int startpoint)
字符串对象调用该方法获得一个当前字符串的子串,该子串从当前字符串的startpoint处截取到最后所得到的字符串。字符串对象调用substring(int start, int end)方法获得一个当前字符串的子串,该子串是通过复制当前字符串start索引位置至end-1索引位置上的字符串所得到的字符串。如
String tom = "我喜欢篮球";
String s = tom.substring(1,3);
s是“喜欢”。
下面是这两个方法的测试结果:
public class Test01 {
public static void main(String[] args) {
// TODO Auto-generated method stub
String path = "c:\\book\\javabook\\java Programmer.doc";
int index = path.indexOf("\\");
System.out.println("第一个index的值是:" + index);
index = path.indexOf("\\", index+1);
//记住indexOf就是从index索引下标开始的,包括index,这里如果index+1改为index,则index的结果仍然是2
System.out.println("第二个index的值是:" + index);
String sub = path.substring(index);
System.out.println(sub);
index = path.lastIndexOf("\\");
sub = path.substring(index + 1);
System.out.println(sub);
System.out.println(sub.contains("Programmer"));
}
}
运行结果如下:

public String trim()
一个字符串s通过调用trim()得到一个字符串对象,该字符串对象是s去掉前后空格后的字符串。
public class Test06 {
public static void main(String[] args) {
// TODO Auto-generated method stub
String s1 = " how are you ";
System.out.println(s1);
System.out.println(s1.trim());
}
}
运行结果如下所示:

public String[] split(String regex, [int limit])
将一个字符串分割为子字符串,然后将结果作为字符串数组返回,原字符串不会发生改变,regex是分隔符。
public class Test07 {
public static void main(String[] args) {
// TODO Auto-generated method stub
String str = "a,b,c,e";
String a[] = str.split(",");
for(String s : a)
{
System.out.println(s);
}
System.out.println("当split()方法带有limit参数时,分割结果如下:");
String b[] = str.split(",", 2);//limit用来限制返回数组中元素的个数
for(String s : b)
{
System.out.println(s);
}
}
}
运行结果如下所示:

字符串与基本数据的相互转换
java.lang包中的Integer类调用其类方法public static int parseInt(String s)可以将由“数字”字符组成的字符串,如“876”转化为int型数据,例如:
int x;
String s = "876";
x = Integer.parseInt(s);
类似地,使用java.lang包中的Byte,Short,Long,Float,Double类调用相应的类方法
public static byte parseByte(String s) throws NumberFormatException
public static short parseShort(String s) throws NumberFormatException
public static long parseLong(String s) throws NumberFormatException
public static float parseFloat(String s) throws NumberFormatException
public static double parseDouble(String s) throws NumberFormatException
可以使用String类的下列类方法
public static String valueOf(byte n)
public static String valueOf(int n)
public static String valueOf(long n)
public static String valueOf(float n)
public static String valueOf(double n)
将形如123、1232.98等数值转化为字符串,如:
String str = String.valueOf(12313.9876);
使用到的方法是valueOf(double n)
对象的字符串表示
Object类有一个public String toString()方法,一个对象通过调用该方法可以获得该对象的字符串表示。一个对象调用toString()方法返回的字符串的一般形式为:
创建对象的类的名字@对象的引用的字符串表示。
如例子1:
public class Test08 {
public static void main(String[] args) {
// TODO Auto-generated method stub
Triangle t = new Triangle();
System.out.println(t);
System.out.println("以下是toString()方法的调用");
System.out.println(t.toString());
}
}
运行结果如下:

例子2:
TV.java
public class TV {
String name;
public TV()
{
}
public TV(String s)
{
name = s;
}
public String toString()
{
String oldStr = super.toString();
return oldStr + "\n这是电视机,品牌是:" + name;
}
}
Test01.java
import java.util.Date;
public class Test01 {
public static void main(String[] args) {
// TODO Auto-generated method stub
Date date = new Date();
System.out.println(date.toString());
TV tv = new TV("长虹电视机");
System.out.println(tv.toString());
}
}
运行结果如下所示:

review10的更多相关文章
随机推荐
- python系列五:Python3列表list
#!usr/bin/python#-*-coding:gbk-*-#列表list'''可以看到a b c 三个是同一id值,当改变当中任一列表元素的值后,三者会同步改变.但d的元素值不会变,改变d的元 ...
- 0x07 MySQL 多表查询
Some Content From——Egon's Blog http://www.cnblogs.com/linhaifeng/articles/7126847.html 一 准备表 准备表 #建表 ...
- SSH远程登陆docker容器
环境: Ubuntu 16.04(mac osx的VMware Fushion环境) 任务: Ubuntu 16.04通过SSH登陆docker(目的是为了运行在其他服务器的Jenkins访问dock ...
- brew和brew cask安装
brew 是从下载源码解压然后 ./configure && make install ,同时会包含相关依存库.并自动配置好各种环境变量,而且易于卸载. 这个对程序员来说简直是福音,简 ...
- 【WEB HTTP】缓存
1. HTTP并不支持兄弟缓存,所以人们通过一些协议对HTTP进行了扩展,比如因特网缓存协议(Internet Cache Protocol, ICP)和超文本缓存协议(HyperText Cachi ...
- SourceTree的基本使用---团队开发/参与开源
1.实践入门-团队开发 如果你看到第二部分关于“参与开源”的内容,而你的需求是团队开发,你会发现几个不方便的地方: 1.1.组长建项目,组员每次提交,都需要组长审查同意merge 如果你觉得麻烦,组长 ...
- linux alsa pcm(此pcm非硬件pcm接口)
转:https://blog.csdn.net/crycheng/article/details/7095899 CODEC :音频芯片的控制,比如静音.打开(关闭)ADC(DAC).设置ADC(DA ...
- Shell编程之Expect自动化交互程序
一.Expect自动化交互程序 1.spawn命令 通过spawn执行一个命令或程序,之后所有的Expect操作都会在这个执行过的命令或程序进程中进行,包括自动交互功能. 语法: spawn [ 选项 ...
- Vue.js学习笔记 第三篇 条件渲染
条件选择 条件选择的用法和其他语言类似,一个例子就能解决所有问题 <!DOCTYPE html> <html> <head> <meta charset=&q ...
- Centos 一次卸载多个RPM包
rpm 不支持通配符,可以使用 xargs来接收多个变量 示例,一次性卸载所有 erlang先关的rpm包: rpm -qa | grep erlang | xargs rpm -e --nodeps