Bagaimana cara mendapatkan karakter terakhir dari string?
public class Main
{
public static void main(String[] args)
{
String s = "test string";
//char lastChar = ???
}
}
Bagaimana cara mendapatkan karakter terakhir dari string?
public class Main
{
public static void main(String[] args)
{
String s = "test string";
//char lastChar = ???
}
}
Jawaban:
Kode:
public class Test {
public static void main(String args[]) {
String string = args[0];
System.out.println("last character: " +
string.substring(string.length() - 1));
}
}
Output dari java Test abcdef
:
last character: f
charAt()
tidak menggunakansubstring()
Berikut adalah metode menggunakan String.charAt()
:
String str = "India";
System.out.println("last char = " + str.charAt(str.length() - 1));
Output yang dihasilkan adalah last char = a
.
Jawaban lain sangat lengkap, dan Anda harus menggunakannya jika Anda mencoba menemukan karakter terakhir dari sebuah string. Tetapi jika Anda hanya mencoba menggunakan kondisional (mis. Adalah karakter terakhir 'g'), Anda juga dapat melakukan hal berikut:
if (str.endsWith("g")) {
atau, string
if (str.endsWith("bar")) {
Solusi sederhana adalah:
public String frontBack(String str) {
if (str == null || str.length() == 0) {
return str;
}
char[] cs = str.toCharArray();
char first = cs[0];
cs[0] = cs[cs.length -1];
cs[cs.length -1] = first;
return new String(cs);
}
Menggunakan array karakter (hati-hati terhadap argumen String kosong atau null String yang buruk!)
Solusi lain menggunakan StringBuilder (yang biasanya digunakan untuk melakukan manupilasi String karena String itu sendiri tidak dapat diubah.
public String frontBack(String str) {
if (str == null || str.length() == 0) {
return str;
}
StringBuilder sb = new StringBuilder(str);
char first = sb.charAt(0);
sb.setCharAt(0, sb.charAt(sb.length()-1));
sb.setCharAt(sb.length()-1, first);
return sb.toString();
}
Namun pendekatan lain (lebih untuk instruksi daripada penggunaan aktual) adalah yang ini:
public String frontBack(String str) {
if (str == null || str.length() < 2) {
return str;
}
StringBuilder sb = new StringBuilder(str);
String sub = sb.substring(1, sb.length() -1);
return sb.reverse().replace(1, sb.length() -1, sub).toString();
}
Di sini string lengkap dibalik dan kemudian bagian yang tidak boleh dibalik diganti dengan substring. ;)
public String lastChars(String a) {
if(a.length()>=1{
String str1 =a.substring(b.length()-1);
}
return str1;
}
public char LastChar(String a){
return a.charAt(a.length() - 1);
}
String aString = "This will return the letter t";
System.out.println(aString.charAt(aString.length() - 1));
Output harus:
t
Selamat coding!
Berikut adalah metode yang saya gunakan untuk mendapatkan xx terakhir dari sebuah string:
public static String takeLast(String value, int count) {
if (value == null || value.trim().length() == 0) return "";
if (count < 1) return "";
if (value.length() > count) {
return value.substring(value.length() - count);
} else {
return value;
}
}
Kemudian gunakan seperti ini:
String testStr = "this is a test string";
String last1 = takeLast(testStr, 1); //Output: g
String last4 = takeLast(testStr, 4); //Output: ring
str.charAt(str.length() - 1)
biasanya karakter terakhir dalam string; tetapi pertimbangkan apa yang terjadi jika str kosong, atau nol.