作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在读高中,这是我的作业,你们不在我的范围内,但我愿意学习和理解。我找遍了所有地方,但我能找到的只是我还不知道的复杂语法。这就是我所拥有的,它需要一个字符串并将其反转。我设法让它忽略大写字母,但我不知道如何让它忽略符号。我那里的数字来自 ANSI 字符,我正在使用的文本板上有一个列表。不要害怕苛刻,我不擅长这个,我只想改进,所以努力吧。
import java.util.Scanner;
public class PalindromeV2
{
public static void main(String[] args)
{
//declare
Scanner sc = new Scanner(System.in);
String fwd, rev;
String result;
//input
System.out.println("What word would you like to Palindrome test?");
fwd = sc.next();
rev = reverseString(fwd);
result = stripPunctuation(fwd);
if(stripPunctuation(rev).equals(stripPunctuation(fwd)))
{
System.out.println("That is a palindrome");
}
else
System.out.println("That is not a palindrome");
}
public static String reverseString(String fwd)
{
String rev = "";
for(int i = fwd.length()-1; i >= 0; i--)
{
rev += fwd.charAt(i);
}
return rev.toUpperCase();
}
public static String stripPunctuation(String fwd)
{
String result = "";
fwd = fwd.toUpperCase();
for(int i = fwd.length()-1; i >= 0; i--)
{
if((fwd.charAt(i)>=65 && fwd.charAt(i)<=90)||(fwd.charAt(i) >= 48 && fwd.charAt(i) <= 58));
result = result + fwd.charAt(i);
}
return result;
}
}
最佳答案
你可以用这个作为检查条件
if (Character.isLetter(fwd.charAt(i)) {
// do something
}
这将检查以确保字符是字母,因此您不必担心大小写、数字或其他符号。
关于Java,无法弄清楚如何从回文字符串中删除符号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19829725/
我想开发一个 Skype 机器人,它将用户名作为输入,并根据用户输入以相反的字符大小写表示hello username。简而言之,如果用户输入他的名字 james,我的机器人会回复他为 Hello J
我是一名优秀的程序员,十分优秀!