Java学习之String类
2015-08-26 15:40
399 查看
Java中的String类也是对字符串事物的描述,字符串的简单用法如下:
s2的内存模型
String类的基本操作
1 字符串的长度
int length();
2从字符串中取出指定位置的字符串
char charAt(int index);
3根据字符获取该字符在字符串中的位置
int indexOf(char ch);
int indexOf(char ch, int fromIndex)//从fromIndex位置开始查找
int indexOf(String str);
int indexOf(String str, int fromIndex);
int lastindexOf(int ch);
4字符串中是否包含某一个子串
boolean contains(str);
5判断长度是否为0
boolean isEmapty();
6判断字符串是否以指定字符串开头/结尾
boolean stratsWith(str);
boolean endsWith(str);
7判断内容是否相同
boolean equals(str);
8将字符数组转成字符串
new String(chs);
9将字符串转成字符数组
char []chs = s.toCharArray();
10将字节数组转成字符串。
String(byte[])
11替换
String replace(oldchar, newchar);
12转换(字符串转换为大写或者小写)
String toUpperCase();
String toLowerCase();
13去空格(两端的)
String trim();
14比较
int compareTo(String);
示例如下:
练习:将字符串反转。
/*
思路:
1,将字符串变成数组。
2,对数组反转。
3,将数组变成字符串。
package com.jikexueyuan.ch; import java.util.Scanner; public class Test02 { public static void main(String[] args){ String s1 = "abc"; //字符串一旦被初始化就不可更改 String s2 = new String("abc"); //s1在内存中只有一个对象 s2在内存中有两个对象 //s2的内存模型如下图 System.out.println(s1 == s2);//s1 s2是不同的对象 System.out.println(s1.equals(s2));//该方法来判断字符串是否想等 } }
s2的内存模型
String类的基本操作
1 字符串的长度
int length();
2从字符串中取出指定位置的字符串
char charAt(int index);
3根据字符获取该字符在字符串中的位置
int indexOf(char ch);
int indexOf(char ch, int fromIndex)//从fromIndex位置开始查找
int indexOf(String str);
int indexOf(String str, int fromIndex);
int lastindexOf(int ch);
4字符串中是否包含某一个子串
boolean contains(str);
5判断长度是否为0
boolean isEmapty();
6判断字符串是否以指定字符串开头/结尾
boolean stratsWith(str);
boolean endsWith(str);
7判断内容是否相同
boolean equals(str);
8将字符数组转成字符串
new String(chs);
9将字符串转成字符数组
char []chs = s.toCharArray();
10将字节数组转成字符串。
String(byte[])
11替换
String replace(oldchar, newchar);
12转换(字符串转换为大写或者小写)
String toUpperCase();
String toLowerCase();
13去空格(两端的)
String trim();
14比较
int compareTo(String);
示例如下:
package com.jikexueyuan.ch; import java.util.Scanner; public class Test02 { public static void main(String[] args){ String str = " Hello world Hello "; System.out.println(str.length());//1 char s = str.charAt(2);//2 System.out.println(s); System.out.println(str.indexOf('l' ));//3 System.out.println(str.indexOf('l', 6));//3 System.out.println(str.indexOf("llo"));//3 System.out.println(str.indexOf("llo", 6));//3 System.out.println(str.lastIndexOf('l'));//3 System.out.println(str.contains("llo"));//4 System.out.println(str.isEmpty());//5 System.out.println(str.startsWith("Hello"));//6 System.out.println(str.endsWith("llo "));//6 String str1 = str.replace("Hello", "goodbye");//11 System.out.println(str1); String str2 = str.toLowerCase(); String str3 = str.toUpperCase(); String str4 = str.trim(); System.out.println(str2 +"\n"+ str3+"\n" + str4); int a = str2.compareTo(str3); System.out.println(a); } }
练习:将字符串反转。
/*
思路:
1,将字符串变成数组。
2,对数组反转。
3,将数组变成字符串。
package com.jikexueyuan.ch; import java.util.Scanner; public class Test02 { public static void main(String[] args){ String str = "abcdefg"; char[] chs = str.toCharArray(); String s = reverse(chs, 0, str.length()); System.out.println(s); } public static String reverse(char[] c, int x, int y) { // TODO Auto-generated method stub for(int start=x, end=y-1;start<end;start++,end--) swap(c, start, end); return new String(c); } private static void swap(char[] c, int x, int y) { // TODO Auto-generated method stub char temp = c[x]; c[x] = c[y]; c[y] = temp; } }
相关文章推荐
- ant jar error:Execute failed: java.io.IOException: Cannot run program XXX ${aapt}
- Java调用net的webservice故障排除实战分享
- 【Java】substring的用法
- 为什么要设置Java环境变量(详解)
- Ext Chart图表保存为图片
- javax.imageio.IIOException: Not a JPEG file: starts with 0x47 0x49
- Java设计模式 -- Singleton模式
- Java 8 Stream Tutorial--转
- spring对AOP的支持
- Eclipse中将一个android项目当做另外一个android项目的library
- 详解Java中的clone方法 -- 原型模式
- Mybatis + SpringMVC事务管理
- Java- 装箱、枚举、注解
- 从零开始学Java之单例模式:懒汉模式和饱汉模式
- Java开发中Maven Jar包管理建议
- [leetcode-207]Course Schedule(java)
- java IDE idea 入门快捷键
- Java多线程 -- 线程的同步与锁
- struts2学习笔记——04
- struts2 拦截器和actioninvocation