A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

看到题目的时候没有什么思路,也不知道用什么样的方法去写,每次去找API,写过之后就忘记了,怎么办呀,看程序可以看懂,就是自己不会写,新人求指导:)

12 个回复

正序浏览
charat也可以解决问题
回复 使用道具 举报
关于String的操作,多加练习。这种问题既可以自己写方法,也可以用已有的方法。熟能生巧!!!
回复 使用道具 举报
有思路就好,就是计数器思想嘛,一串字符转换成字符数组,遍历判断,查API中。。。
回复 使用道具 举报

转换成字节数,不用强转 比较的时候会自动查码表的
回复 使用道具 举报
嘟嘟嘟嘟嘟 发表于 2015-7-17 11:53
我的想法:通过Asci码值来进行判断
1. 将输入的值转为char数组
2. 将数组中值一个一个提取出,将其强制转换为 ...

这种方法就可以啊
回复 使用道具 举报
女神 中级黑马 2015-11-3 00:16:40
8#
是不是还有一种方法?
回复 使用道具 举报
嘟嘟嘟嘟嘟 发表于 2015-7-17 11:53
我的想法:通过Asci码值来进行判断
1. 将输入的值转为char数组
2. 将数组中值一个一个提取出,将其强制转换为 ...

谢谢指导:)
回复 使用道具 举报
pi408637535 发表于 2015-7-17 12:15
把字符串挨个取出来,然后按照ascii的值转换成 大小写,数字。 你写的代码太少了,多写代码。Java不难 ...

恩恩,的确是这样,谢谢,代码堆成山等我去敲了:'(
回复 使用道具 举报
把字符串挨个取出来,然后按照ascii的值转换成 大小写,数字。 你写的代码太少了,多写代码。Java不难
回复 使用道具 举报
我的想法:通过Asci码值来进行判断
1. 将输入的值转为char数组
2. 将数组中值一个一个提取出,将其强制转换为int的值,这个值就是Asci值
3. 用取得的值进行判断,知道它是什么类型的

代码:(我还没学键盘输入输出,直接用一个str代替,方法是一样的:

  1. public class AnsiTest {
  2.         public static void main(String[] args) {
  3.                 String str = "sAdfe15809";
  4.                 getAsciNum(str);
  5.         }
  6.         public static void getAsciNum(String str){
  7.                 int num = 0;//数字计数
  8.                 int capital = 0;//大写计数
  9.                 int lowerCase  =0;//小写计数
  10.                 char[] c = str.toCharArray();//转为char数组
  11.                 //逐个提取出char数组中的值进行判断
  12.                 for (int i = 0; i < c.length; i++) {
  13.                         //通过asci编码值进行判断
  14.                         if((int)c[i]>=48 && (int)c[i]<=57)
  15.                                 num++;
  16.                         if((int)c[i]>=65 && (int)c[i]<=90)
  17.                                 capital++;
  18.                         if((int)c[i]>=97 && (int)c[i]<=122)
  19.                                 lowerCase++;
  20.                 }
  21.                 System.out.println("数字:"+num+";大写字母:"+capital+";小写字母:"+lowerCase);
  22.         }
  23. }
复制代码
回复 使用道具 举报
我先说下我的思路:
录入后,1、用循环输出各个字符值
             2、判断是大小写字母和数字
             3、如果在某个范围(比如大写字母),计数器++;
也不知道对不对。你可以试着做一下
回复 使用道具 举报
关于键盘录入--在使用键盘录入时先输入int类型再输入String... http://bbs.itheima.com/thread-214637-1-1.html (出处: 黑马程序员IT技术论坛)
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马