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的更多相关文章

随机推荐

  1. java集合的部分接口

    接口 Collection<E> public interface Collection<E>extends Iterable<E> Collection 层次结构 ...

  2. ECMAScript6重复字符串方法repeat()

    repeat() 1.定义 repeat()方法返回一个新字符串,新字符串将对象字符串重复指定次数. 2.语法 str.repeat(count) count:表示新构造的字符串把原字符串重复的次数, ...

  3. 斯坦福大学Andrew Ng - 机器学习笔记(6) -- 聚类 & 降维

    大概用了一个月,Andrew Ng老师的机器学习视频断断续续看完了,以下是个人学习笔记,入门级别,权当总结.笔记难免有遗漏和误解,欢迎讨论. 鸣谢:中国海洋大学黄海广博士提供课程视频和个人笔记,在此深 ...

  4. mysql学习笔记—常用sql函数

    SQL 拥有很多可用于计数和计算的内建函数. SQL Aggregate 函数 SQL Aggregate 函数计算从列中取得的值,返回一个单一的值. 有用的 Aggregate 函数: AVG() ...

  5. JavaWeb—Servlet

    1.什么是Servlet 用来扩展web服务器功能的组件——早期的web服务器只能处理静态资源的请求,即需要事先将html文件准备好,并存放到web服务器上面.不能够处理动态资源的请求(需要计算,动态 ...

  6. 流量监控系统---storm集群配置

    1.集群部署的基本流程 集群部署的流程:下载安装包.解压安装包.修改配置文件.分发安装包.启动集群 注意: 所有的集群上都需要配置hosts vi  /etc/hosts 192.168.223.20 ...

  7. 安装mysql到ubuntu

    Ubuntu 16.04上安装MySQL步骤: 如果你使用的是Ubuntu 16.04以前的版本,可以看这里:Ubuntu 14.04/15.10升级到Ubuntu 16.04 LTS.一. 安装My ...

  8. 8位单片机可用的 mktime localtime函数

    8位单片机可用的 mktime  localtime函数及源码 最近在做一个8位单片机项目,其中用到了时间戳转换函数,这个在32位机上一个库函数就解决了问题,没想到在8位单片机中没有对应库(time. ...

  9. OLTP和OLAP浅析

    数据库设计的一个根基就是要弄清楚数据库的类型.   当今的数据处理大致可以分成两大类:联机事务处理OLTP(on-line transaction processing在线事务处理,联机事务处理).联 ...

  10. linux+udp+server+client

    一.客户端 #include<sys/types.h> #include<sys/socket.h> #include<netinet/in.h> #include ...