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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 人心如水 中级黑马   /  2014-6-11 18:25  /  1188 人查看  /  6 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

package com.itheima;

import java.util.Scanner;

/*
* 1、 从键盘接受一个数字,列出该数字的中文表示格式,例如:键盘输入123,打印出一二三;键盘输入3103,打印出三一零三。
*/


public class Test1 {
        public static void main(String[] args) {
                //从键盘输入扫描内容
                Scanner sc = new Scanner(System.in);
                //输出你想要输入的数据
                System.out.println("请输入你要输入的数据");
                //利用键盘输入了一个整数
                int in = sc.nextInt();
                //把输入的整数转换为字符串
                 String str = String.valueOf(in);
                //查找API的String类方法,将输入的字符串转换为字符数组
                //char[] ch = str.toCharArray();
                //将所有数字汉字在数组里体现出来
                //String str1 = "零一二三四五六七八九";
                 char[] ch1 = {'零','一','二','三','四','五','六','七','八','九',};
                // char[] ch2 = new char[];
                //遍历出ch数组里面的元素
                for(int i=0;i<str.length();i++){
                        char ch3=ch1[str.charAt(i)];
                        //char  ch2=ch1[x];
                        System.out.print(ch3);       
                }
        }
}
我的思路是这样的,不过转换的方式应该错了,求正确的做题方法。

评分

参与人数 1技术分 +1 收起 理由
李小然 + 1

查看全部评分

6 个回复

倒序浏览
写一个简单的例子吧:
        public static void main(String[] args)
        {
                //简单演示
                String[] table={"零","一","二","三","四","五","六","七","八","九"};
                Scanner scan=new Scanner(System.in);
                String s= scan.next();
                for (char c : s.toCharArray())
        {
                        if(c>='0' && c<='9'){
                                System.out.print(table[c-48]);
                        }
                }
        }

评分

参与人数 1技术分 +1 收起 理由
李小然 + 1

查看全部评分

回复 使用道具 举报
axuan 发表于 2014-6-11 19:21
写一个简单的例子吧:
        public static void main(String[] args)
        {

for (char c : s.toCharArray())  这个是什么意思,for循环里面怎么还能这样啊:(
回复 使用道具 举报 1 1
人心如水 发表于 2014-6-11 21:16
for (char c : s.toCharArray())  这个是什么意思,for循环里面怎么还能这样啊

就是将字符串转换成字节数组:如  "123" --> char[] ch={'1','2','3'}
回复 使用道具 举报
axuan 发表于 2014-6-11 22:56
就是将字符串转换成字节数组:如  "123" --> char[] ch={'1','2','3'}

不是说的这个,我是不懂你的for循环,不是应该for(int i = o ;i<arr.length;i++)吗?
回复 使用道具 举报
人心如水 发表于 2014-6-11 22:58
不是说的这个,我是不懂你的for循环,不是应该for(int i = o ;i

那个是低级的for循环,计数的,说这句话有点冒昧,
这个是高级for循环,想学习更多,请百度一哈,我就不解释了,共同进步,加油
回复 使用道具 举报
axuan 发表于 2014-6-11 23:01
那个是低级的for循环,计数的,说这句话有点冒昧,
这个是高级for循环,想学习更多,请百度一哈,我就不 ...

{:2_30:}高级循环,嗯 我去找
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马