JAVA 字串操作
阿新 • • 發佈:2018-12-19
要求:
-
完成一個java application應用程式,完成字串的各種操作。
-
操作包括字串的初始化賦值和輸出。
-
操作包括兩個字串相加合成為一個新字串。
-
操作包括兩個字串比較其是否相同。
-
操作包括已知一個字串,查詢某一子字串是否被包含在此字串之中,如果包含,包含了多少次。
-
操作包括已知一個字串及其包含的某一子字串,把此子字串替換為其他的新的指定字串。
-
操作包括對特定字串與數值之間的相互轉換。
-
操作包括字串與位元組陣列之間的相互轉換。
-
操作包括從格式化字串輸入數值和利用格式化字串輸出數值。
下面給出具體的例子:
一. 完成如下功能
- 操作包括字串的初始化賦值和輸出。
-
操作包括兩個字串相加合成為一個新字串。
-
操作包括兩個字串比較其是否相同。
程式:
class StrDemo1 {
public static void main(String args[]) {
String s1 = new String("mingzhuo"); //宣告String物件s1
String s2 = new String("to be a better man.");//宣告String物件s2
String s = s1+" "+s2; //將物件s1和s2連線後的結果賦值給s
boolean b = s1.equals(s2); //判斷s1和s2是否相等
System.out.println(s); //輸出s
System.out.println(s1 + " equals " + s2 + " : " + b);
}
}
執行結果:
二. 操作包括已知一個字串,查詢某一子字串是否被包含在此字串之中,如果包含,包含了多少次。
程式:
class StrDemo2 {
public static void main(String args[]) {
String s1 = new String("You are my sunshine, my pretty sunshine .");//宣告String物件s1
String s2 = new String("sunshine");//宣告String物件s2
boolean b = s1.contains(s2);//判斷s1是否包含s2
if(b) {
System.out.println("s1包含s2");
}
else {
System.out.println("s1不包含s2");
}
int num = appearNumber(s1,s2);
System.out.println("s2 在s1 中出現了 " + num + "次");
}
//構造方法統計子字串出現的次數
public static int appearNumber(String s1, String s2) {
int count = 0;
int index = 0;
while ((index = s1.indexOf(s2, index)) != -1) {
index = index + s2.length();
count++;
}
return count;
}
}
執行結果:
三. 操作包括已知一個字串及其包含的某一子字串,把此子字串替換為其他的新的指定字串。
程式:
class StrDemo3 {
public static void main(String args[]) {
String s1 = "mingzhuo ,a dreamer.";//宣告String物件s1
String s2 = s1.replace("mingzhuo","mingming");//替換字串
System.out.println(s1);
System.out.println("替換為:" + s2);
}
}
**執行結果: **
四. 操作包括對特定字串與數值之間的相互轉換。
程式:
class StrDemo4 {
public static void main(String args[]) {
String s1 = "17";
int num = 15;
int tranToNum = Integer.parseInt(s1);//字串轉化為數字
System.out.println("字串轉化為數字:" + tranToNum);
String tranToStr = String.valueOf(num);//數字轉化為字串
System.out.println("這是一個字串:" + tranToStr);
}
}
執行結果:
五. 操作包括字串與位元組陣列之間的相互轉換。
程式:
class StrDemo5 {
public static void main(String args[]) {
String str = "hello";
String s2 = "world";
byte[] bs = str.getBytes();
byte[] b = s2.getBytes();
String a = new String(b);
System.out.println(bs);
System.out.println(b);
System.out.println(a);
}
}
執行結果:
六. 操作包括從格式化字串輸入數值和利用格式化字串輸出數值。
程式:
import java.util.Date;
class StrDemo6 {
public static void main (String args[]) {
String str = String.format("%b",3 > 5);//將結果格式化為布林型別
Date date = new Date();
String time = String.format("%tc",date);//將Date格式化
String form = String.format("%tF",date);
System.out.println("3>5正確嗎:" + str);
System.out.println("全部的時間資訊是:" + time);
System.out.println("年-月-日格式:" + form);
}
}
執行結果: