IT

문자열의 마지막 문자는 어떻게 얻습니까?

lottoking 2020. 5. 29. 08:19
반응형

문자열의 마지막 문자는 어떻게 얻습니까?


문자열의 마지막 문자는 어떻게 얻습니까?

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)); 
    }
}

출력 :

last character: f

다음을 사용하는 방법이 있습니다 String.charAt().

String str = "India";
System.out.println("last char = " + str.charAt(str.length() - 1));

결과 출력은 last char = a입니다.


다른 답변에는 불필요한 텍스트와 코드가 많이 있습니다. 다음은 문자열의 마지막 문자를 얻는 두 가지 방법입니다.

char lastChar = myString.charAt(myString.length() - 1);

String lastChar = myString.substring(myString.length() - 1);

다른 답변은 매우 완전하므로 문자열의 마지막 문자를 찾으려면 반드시 사용해야합니다. 그러나 조건부 (예 : 마지막 문자 'g')를 사용하려는 경우 다음을 수행 할 수도 있습니다.

if (str.endsWith("g")) {

또는 문자열

if (str.endsWith("bar")) {

이 시도:

if (s.charAt(0) == s.charAt(s.length() - 1))

간단한 해결책은 다음과 같습니다.

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);
}

문자형 배열 사용하기 (빈 문자열 또는 null 문자열 인수를 조심하십시오!)

다른 솔루션은 StringBuilder를 사용합니다 (String 자체는 불변이므로 일반적으로 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();
}

Here the complete string is reversed and then the part that should not be reversed is replaced with the 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 should be:

t

Happy coding!


Here is a method I use to get the last xx of a 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;
    }
}

Then use it like so:

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;
}

참고URL : https://stackoverflow.com/questions/5163785/how-do-i-get-the-last-character-of-a-string

반응형