Java程式檢查字串中字元的順序
給定一個字串,你的任務是用Java編寫一個程式來檢查其字元的順序。如果順序是預先定義的,則必須檢查字元是否按給定順序排列;否則,檢查字元是否按字母順序排列。
示例場景
Input: str = "abcmnqxz"; Output: res = TRUE
給定的字串按字母順序排列。
使用迭代
在這種方法中,使用for迴圈迭代字串,並使用if塊檢查當前位置和前一個位置的字元值是否相同。如果相同,則返回TRUE,表示字母按順序排列;否則返回FALSE,表示字母未按順序排列。
示例
下面是一個檢查字串中字元順序的Java程式:
public class Demo{
static boolean alphabetical_order(String my_str){
int str_len = my_str.length();
for (int i = 1; i < str_len; i++){
if (my_str.charAt(i) < my_str.charAt(i - 1)){
return false;
}
}
return true;
}
public static void main(String[] args){
String my_str = "abcmnqxz";
if (alphabetical_order(my_str)){
System.out.println("The letters are in alphabetical order");
} else{
System.out.println("The letters are not in alphabetical order");
}
}
}
這段程式碼將產生以下結果:
The letters are in alphabetical order
使用indexOf()方法
String類的indexOf()方法用於查詢字串中字元第一次出現的索引。我們使用此方法來檢查順序字串中的字元是否在指定字串中以相同的順序出現。
示例
讓我們看看實際實現:
public class Demo {
public static boolean alphabetical_order(String my_str, String order) {
int index = -1;
for (char ch : order.toCharArray()) {
index = my_str.indexOf(ch, index + 1);
if (index == -1) return false;
}
return true;
}
public static void main(String[] args) {
String my_str = "tutorialspoint";
String order = "uoi";
if (alphabetical_order(my_str, order)){
System.out.println("The letters are in correct order");
} else{
System.out.println("The letters are not in correct order");
}
}
}
執行後,您將獲得以下結果:
The letters are in correct order
廣告
資料結構
網路
關係資料庫管理系統 (RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP