English 中文(简体)
领下一个字母的胎体
原标题:Scala function to get next letter of the alphabet
  • 时间:2011-04-21 21:43:34
  •  标签:
  • scala
  • string

Looking for something to do the following:

Given input: "s"
Expected output: "t"
最佳回答
scala> def f(s: String) = (s.head + 1).toChar.toString
f: (s: String)java.lang.String

scala> f("s")
res10: java.lang.String = t
问题回答
def nextLetter(x:String) = (x(0) + 1).toChar.toString

这些方法只给信件带来有意义的结果:

def nextLetter(letter: Char): Option[Char] = {
  val validChars = ( a  to  y ) ++ ( A  to  Y )
  if (validChars contains letter) Some((letter + 1).toChar) else None
}

def nextLetter(letter: String): Option[String] = {
  if (letter.length != 1) None
  else nextLetter(letter(0)).map(_.toString)
}

println(nextLetter( a ))
println(nextLetter( b ))
println(nextLetter( z ))
println(nextLetter( 1 ))
println(nextLetter( A ))
println(nextLetter("A"))
println(nextLetter("AB"))




相关问题
Simple JAVA: Password Verifier problem

I have a simple problem that says: A password for xyz corporation is supposed to be 6 characters long and made up of a combination of letters and digits. Write a program fragment to read in a string ...

Case insensitive comparison of strings in shell script

The == operator is used to compare two strings in shell script. However, I want to compare two strings ignoring case, how can it be done? Is there any standard command for this?

Trying to split by two delimiters and it doesn t work - C

I wrote below code to readin line by line from stdin ex. city=Boston;city=New York;city=Chicago and then split each line by ; delimiter and print each record. Then in yet another loop I try to ...

String initialization with pair of iterators

I m trying to initialize string with iterators and something like this works: ifstream fin("tmp.txt"); istream_iterator<char> in_i(fin), eos; //here eos is 1 over the end string s(in_i, ...

break a string in parts

I have a string "pc1|pc2|pc3|" I want to get each word on different line like: pc1 pc2 pc3 I need to do this in C#... any suggestions??

Quick padding of a string in Delphi

I was trying to speed up a certain routine in an application, and my profiler, AQTime, identified one method in particular as a bottleneck. The method has been with us for years, and is part of a "...

热门标签