扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
这段代码是判断输入的字符串是不是回文。
泗阳网站制作公司哪家好,找成都创新互联公司!从网页设计、网站建设、微信开发、APP开发、响应式网站建设等网站项目制作,到程序开发,运营维护。成都创新互联公司自2013年创立以来到现在10年的时间,我们拥有了丰富的建站经验和运维经验,来保证我们的工作的顺利进行。专注于网站建设就选成都创新互联公司。
所谓回文,是指诸如:abcba这样的字符串,也就是说第一个字母也最后一个字母相同,第二个字母与倒数第二个字母相同,以些类推。
这段代码的关键是下面这几句:
while (j = (i / 2) -1 word.charAt(j) == word.charAt(i - j - 1))
j++;
这个就是从字符串的第一个字母开始逐一判断是否满足回文的要求,如果所有的都满足,那么,这个循环结束时,j = (i/2),这样就可以用下面的条件语句来判断是否为回文了。
下面是这段代码的注释,希望能帮到你~!
import java.util.Scanner;
public class PalindromeV1 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);//接受从控制台的输入
System.out.println("输入一个字符串: ");
String word = sc.next();//将用户输入的字符串保存到word中
int i = word.length();//获取输入的字符串的长度,保存到i中
int j = 0;//初始化变量j
//从字符串的第一个字母开始逐一判断是否满足回文的要求,如果所有的都满足,那么,这个循环结束时,j = (i/2)
while (j = (i / 2) - 1 word.charAt(j) == word.charAt(i - j - 1))
j++;
//判断是否为回文
if (j == i / 2)
System.out.println("输入字符串是回文.");
else
System.out.println("输入字符串不是回文.");
}
}
Scanner sc = new Scanner(System.in);
System.out.println("请输入一个整数:");
int num = sc.nextInt();
String str1 = num + "";
// String str1 = Integer.toString(num);
// String str1 = String.valueOf(num);
StringBuilder str2 = new StringBuilder(str1);
str2.reverse();
int count = 0;
for (int i = 0; i str1.length(); i++) {
if (str1.charAt(i) != str2.charAt(i)) {
System.out.println(str1 + "不是回文数");
break;
} else {
count++;
}
}
if (count == str1.length()) {
System.out.println(str1 + "是回文数");
}
望采纳
按照你的要求编写的,输出从0到max中用二进制表示和十进制表示都是回文数的Java程序如下:
import java.util.Scanner;
public class CCF {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.print("请输入一个整数:");
int max=sc.nextInt();
for(int i=0;i=max;i++){
String num = String.valueOf(i);
String num2=Integer.toBinaryString(i);
String reversenum=new StringBuffer(num).reverse().toString();
String reversenum2=new StringBuffer(num2).reverse().toString();
if(reversenum.equals(num) reversenum2.equals(num2)){
System.out.println(i+"用二进制表示"+num2+"和十进制表示"+i+"都是回文数");
}
}
}
}
运行结果:
请输入一个整数:1000
0用二进制表示0和十进制表示0都是回文数
1用二进制表示1和十进制表示1都是回文数
3用二进制表示11和十进制表示3都是回文数
5用二进制表示101和十进制表示5都是回文数
7用二进制表示111和十进制表示7都是回文数
9用二进制表示1001和十进制表示9都是回文数
33用二进制表示100001和十进制表示33都是回文数
99用二进制表示1100011和十进制表示99都是回文数
313用二进制表示100111001和十进制表示313都是回文数
585用二进制表示1001001001和十进制表示585都是回文数
717用二进制表示1011001101和十进制表示717都是回文数
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流