为什么他NND我写什么鸟程序都写不对?运气好的调试个一两天才能发现问题,运气不好根本就无从下手,每次出现的问题其实都很简单,比如“==”写成“=”诸如此类,大神肯定说要多练,可是这种速度根本就没法多练,你想想一个星期做出一个ToyProgramme,怎么能多练呢?问题到底出到哪里呢?大神你们是怎么训练的求教?另附菜鸟的天真程序,但那时总的不懂满意结果——求字符串是否对称的:
public class duichentest{
public static void main(String args[]){
int p = 0;
String subargs[] = new String [args.length];
for(int i=0; i<args.length; i++){
subargs[i] = args[args.length - i - 1];
}
for(int i=0; i<args.length; i++){
if(subargs[i] == args[i]){
p++;
}
}
if(p == args.length){
System.out.println("该字符串是回环字符串");
}
if(p != args.length){
System.out.println("该字符串不是回环字符串");
}
} }
public class duichentest{
public static void main(String args[]){
int p = 0;
String subargs[] = new String [args.length];
for(int i=0; i<args.length; i++){
subargs[i] = args[args.length - i - 1];
}
for(int i=0; i<args.length; i++){
if(subargs[i] == args[i]){
p++;
}
}
if(p == args.length){
System.out.println("该字符串是回环字符串");
}
if(p != args.length){
System.out.println("该字符串不是回环字符串");
}
} }
Scanner scanner = new Scanner(System.in);
System.out.println("Type in a string please.");
String input = scanner.nextLine();
judge(input);
}
public void judge(String temp){
int middle = (int) Math.floor(temp.length()/2);//取中间数
int count = 0;//进行计数,判断是否完全一致.
for (int i = 0; i < middle; i++) {
if (temp.charAt(i) == temp.charAt(temp.length()-i-1)) {
count++;
}
}
if (count == middle) {
System.out.println("It's a circle string");
}else {
System.out.println("It's not a circle string");
}
}这是我刚才写的判断回环字符串的方法。
与君共勉。
1、把String args[]当作字符数组来用?
2、字符串没用equals做比较“if(subargs[i] == args[i])”?
return (string == null || string.equals("")) ? false :
new StringBuilder(string).reverse().toString().equals(string);
}
PS:下次贴好代码,看得头疼
if(null == str || "".equals(str))
return false;
int i = 0, j = str.length()-1;
for (; i <= j; i++, j--) {
if (str.charAt(i) != str.charAt(j))
break;
}
if (i >= j)
return true;
return false;
} public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("Type in a string please:");
String input = scanner.nextLine();
boolean flag = checkPlalindrome(input);
if(flag)
System.out.println("It's a palindrome string");
else
System.out.println("It's not a palindrome string");
}
}