第6章 字串 认识字符串( String) 字符串高级运用
第6章 • 字 串 – 认识字符串(String) – 字符串高级运用
String类 在某些程序语言中’字符串是以字符数组 的方式存在"e 在Java中字符串不仅仅是字符数组,而是 String 类的一个实例 string text="字符串的使用"; System. out. println(text)i
String类 • 在某些程序语言中,字符串是以字符数组 的方式存在 • 在Java中字符串不仅仅是字符数组,而是 String类的一个实例 String text ="字符串的使用"; System.out.println(text);
String类 字符串必须使用“”来包括您的文字 字符串的字符是使用 Unicode字符来建构 字符串的串接在Java中可以直接使用+ string msg="哈啰!"; msg=msg+"Java程序设计!"; System. out. println(msg)i
String类 • 字符串必须使用“”来包括您的文字 • 字符串的字符是使用Unicode字符来建构 • 字符串的串接在Java中可以直接使用'+' String msg ="哈啰!"; msg = msg + "Java程序设计!"; System.out.println(msg);
String 类 字符串在Java中以 String类的一个实例存在 方法 说明 length 取得字符串的字符长度 equals 判断原字符串中的字符是否相等于指定字符串中的字符 toLowerCaseo 转换字符串中的英文字符为小写 toUpperCase0|转换字符串中的英文字符为大写 string text =hello System.out. println("字符串内容:"+text) System.out. println("字符串长度 text length () System. out. print1n(等于he11o?"+ text equals (hello))i System.out. print1n(转为大写:"+ text. toUpperCase())i System.out. print1n(转为小写:"+ text. toLowercase()i
String类 • 字符串在Java中以String类的一个实例存在 方 法 说 明 length() 取得字符串的字符长度 equals() 判断原字符串中的字符是否相等于指定字符串中的字符 toLowerCase() 转换字符串中的英文字符为小写 toUpperCase() 转换字符串中的英文字符为大写 String text = "hello"; System.out.println("字符串内容: " + text); System.out.println("字符串长度: " + text.length()); System.out.println(“等于hello? " + text.equals("hello")); System.out.println(“转为大写: " + text.toUpperCase()); System.out.println(“转为小写: " + text.toLowerCase());
String类 捋输入的字符串转换为整数、浮点数等 方法 说明 Byte parse Byte(字符串) 将字符串剖析为位 Short. parse short(字符串) 将字符串剖析为 short整数 nteger parseInt(字符串) 将字符串剖析为int整数 Long. parselong(字符串) 将字符串剖析为long整数 F| oat parse float(字符串 将字符串剖析为foat浮点数 Double parse Double(字符串) 将字符串剖析为 double浮点数 指定的字符串无法剖析为指定的数据型态数值 则会发生 NumberFormatEXception例外
String类 • 将输入的字符串转换为整数、浮点数等 • 指定的字符串无法剖析为指定的数据型态数值, 则会发生NumberFormatException例外 方 法 说 明 Byte.parseByte(字符串) 将字符串剖析为位 Short.parseShort(字符串) 将字符串剖析为short整数 Integer.parseInt(字符串) 将字符串剖析为int整数 Long.parseLong(字符串) 将字符串剖析为long整数 Float.parseFloat(字符串) 将字符串剖析为float浮点数 Double.parseDouble(字符串) 将字符串剖析为double浮点数
String类 以配置对象的观念来声明字符串 string str new string("caterpillar )i 两种声明方式是有所差别的 String str ="caterpillar
String类 • 以配置对象的观念来声明字符串 • 两种声明方式是有所差别的 String str = new String("caterpillar"); String str = "caterpillar";
String类 使用索引取得字符的相欠方法 方法 说明 char charAt(int index) 传回指定索引处的字符 int indexof(int ch) 传回指定字符第一个找到的索引位置 int indexof( String str) 传回指定字符串第一个找到的索引位置 int lastIndexof(int ch) 传回指定字符最后一个找到的索引位置 String substring(int beginIndex) 取出指定索引处至字符串尾端的子字符串 String substring(int beginIndex, int 取出指定索引范围子字符串 endIndex) charl] to Chararrayo 将字符串转换为字符数组 code\ch06\ CharAt string.java
String类 • 使用索引取得字符的相关方法 方 法 说 明 char charAt(int index) 传回指定索引处的字符 int indexOf(int ch) 传回指定字符第一个找到的索引位置 int indexOf(String str) 传回指定字符串第一个找到的索引位置 int lastIndexOf(int ch) 传回指定字符最后一个找到的索引位置 String substring(int beginIndex) 取出指定索引处至字符串尾端的子字符串 String substring(int beginIndex, int endIndex) 取出指定索引范围子字符串 char[] toCharArray() 将字符串转换为字符数组 code\ch06\CharAtString.java
String类 ends Witho方法 String[] filenames ="caterpillar. jpg cater.gif", bush. jpg",wuwu. jpg",clockmangifi System.out. print("过滤出jpq檔案:"); for (int i=0, i< filenames. length; i++) if(filenames [i]. endsWith(jpg")) System. out. print(filenames[i]+ System. out. println (")i code cho6filefilter iava
String类 • endsWith()方法 String[] filenames = {"caterpillar.jpg", "cater.gif", "bush.jpg", "wuwu.jpg", "clockman.gif"}; System.out.print("过滤出jpg檔案: "); for(int i = 0; i < filenames.length; i++) { if(filenames[i].endsWith("jpg")) { System.out.print(filenames[i] + " "); } } System.out.println(""); code\ch06\FileFilter.java
不可变( immutable)字符串 个字符串对象一旦被配置,它的内容就 是固定不可变的( immutable) 不要以为下面的陈祉就是改变一个字符串 对象的内容 嬖數 string str="Just"氵 aa可 str Justin 使用=重新指定
不可变(immutable)字符串 • 一个字符串对象一旦被配置,它的内容就 是固定不可变的(immutable) • 不要以为下面的陈述就是改变一个字符串 对象的内容 String str = "Just"; str = "Justin";
不可变( immutable)字符串 ·对于一些可以共享的字符串对象,会先在 String中查找是否存在相同的 String内容 string strl flyweight"i string str2 =flyweight i System. out. println(strl str2) 当您直接在程序中使用"来包括一个字符串 时,该字符串就会在 String汇中 參考名稱 String實例 str1 凵 y w e ght 參考名稱 str2
不可变(immutable)字符串 • 对于一些可以共享的字符串对象,会先在 String池中查找是否存在相同的String内容 • 当您直接在程序中使用""来包括一个字符串 时,该字符串就会在String池中 String str1 = "flyweight"; String str2 = "flyweight"; System.out.println(str1 == str2);