[英]How do I get the last character of a string?
如何获取字符串的最后一个字符?
public class Main {
public static void main(String[] args) {
String s = "test string";
//char lastChar = ???
}
}
编码:
public class Test {
public static void main(String args[]) {
String string = args[0];
System.out.println("last character: " +
string.substring(string.length() - 1));
}
}
java Test abcdef
的输出:
last character: f
这是一个使用String.charAt()
的方法:
String str = "India";
System.out.println("last char = " + str.charAt(str.length() - 1));
结果输出是last char = a
。
其他答案非常完整,如果您要查找字符串的最后一个字符,则绝对应该使用它们。 但是,如果您只是尝试使用条件(例如是最后一个字符 'g'),您还可以执行以下操作:
if (str.endsWith("g")) {
或者,字符串
if (str.endsWith("bar")) {
其他答案包含大量不必要的文本和代码。 以下是获取字符串最后一个字符的两种方法:
字符
char lastChar = myString.charAt(myString.length() - 1);
细绳
String lastChar = myString.substring(myString.length() - 1);
尝试这个:
if (s.charAt(0) == s.charAt(s.length() - 1))
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));
输出应该是:
t
快乐编码!
简单的解决办法是:
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);
}
使用字符数组(注意讨厌的空字符串或空字符串参数!)
另一种解决方案使用 StringBuilder (通常用于进行字符串操作,因为 String 本身是不可变的。
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();
}
另一种方法(更多用于指导而不是实际使用)是这样的:
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();
}
这里整个字符串被反转,然后不应该被反转的部分被替换为子字符串。 ;)
这是我用来获取字符串最后一个 xx 的方法:
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;
}
}
然后像这样使用它:
String testStr = "this is a test string";
String last1 = takeLast(testStr, 1); //Output: g
String last4 = takeLast(testStr, 4); //Output: ring
public char lastChar(String s) {
if (s == "" || s == null)
return ' ';
char lc = s.charAt(s.length() - 1);
return lc;
}
数组中的东西:
s = 'some string'
s[-1] # last char
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.