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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 张宝 中级黑马   /  2013-3-4 22:51  /  1733 人查看  /  8 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 张宝 于 2013-3-5 21:29 编辑

定义一个五位数,将这个五位数的每一位上的值取出
12345--->万位值是1千位值是2......  

8 个回复

倒序浏览
public class MyDemo{
public static void main(String[] args) {
  
  int abc=12345;
  String str=String.valueOf(abc);//这是把该值转换成String
  for(int i=0;i<str.length();i++)
  {
   System.out.println(str.charAt(i));//循环依次取出每个位上的值。
  }
这是我写的。我想你看完13天的讲解会明白的。不知道能不能帮到你。

}

}

评分

参与人数 1技术分 +1 收起 理由
黄玉昆 + 1 赞一个!

查看全部评分

回复 使用道具 举报
public class Test5 {

        /**
         *int a= 12345%10000 得到万分位的基数1,a/10000%1000得到千分位,a/10000/1000%100得到百分位的,a/10000/1000/100&10得到十分位的,


         */
        public static void main(String[] args) {
                int a=12345;
                int b1=a/10000;
                System.out.println(b1);
                 int a1=a%10000;
                 int a2=a1/1000;
                 System.out.println(a2);
                int a3=a1%1000/100;
                System.out.println(a3);
                int a4=a1%1000%100/10;
                System.out.println(a4);
                int a5=a1%1000%100%10;
                System.out.println(a5);
                       
               
               
        }

}

评分

参与人数 1黑马币 +9 收起 理由
黄玉昆 + 9 淡定

查看全部评分

回复 使用道具 举报
class Test9
{
        public static void main(String[] args)
        {
                int[] arr=getNums(12245);
                for(int i=0;i<arr.length;i++)
                        System.out.println(arr[i]);
        }
        public static int[] getNums(Integer num)
        {
                int[] arr=new int[num.toString().length()];
                for(int i=num.toString().length()-1;i>=0;i--)
                {
                        arr[i]=num%10;//1634
                        num/=10;
                }
                return arr;
        }
}这是我的方法,获取任意范围内的数的每个位数,只要不超过类型范围.用位移我做不到....
回复 使用道具 举报
本帖最后由 朱玉玺 于 2013-3-4 23:34 编辑
张宁 发表于 2013-3-4 23:08
public class MyDemo{
public static void main(String[] args) {
  

str.charAt(i)+“”,不然会打印对应的字符编码值,是个整型。还可以通过Integer.parseInt(str.charAt(i)+“”)获取相应的每个位的字符对应int数值。
回复 使用道具 举报
张宁 发表于 2013-3-4 23:08
public class MyDemo{
public static void main(String[] args) {
  

谢谢,现在还没学到for呢
看这样写可以吗?

class Text2
{
        public static void  main(String[] args)

        {

                int a=12345;

                System.out.println("万位数是"+a/10000%10);

                System.out.println("千位数是"+a/1000%10);

                System.out.println("百位数是"+a/100%10);

                System.out.println("十位数是"+a/10%10);

                System.out.println("个位数是"+a%10);


        }
   
}

评分

参与人数 1技术分 +1 收起 理由
黄玉昆 + 1 鼓励新人

查看全部评分

回复 使用道具 举报
陈圳 发表于 2013-3-4 23:20
class Test9
{
        public static void main(String[] args)

已经超过我们学习范围了,谢谢啊!!看这样可以不

class Text2
{
        public static void  main(String[] args)

        {

                int a=12345;

                System.out.println("万位数是"+a/10000%10);

                System.out.println("千位数是"+a/1000%10);

                System.out.println("百位数是"+a/100%10);

                System.out.println("十位数是"+a/10%10);

                System.out.println("个位数是"+a%10);


        }
   
}
回复 使用道具 举报
张宝 发表于 2013-3-4 23:33
谢谢,现在还没学到for呢
看这样写可以吗?

你运行一下就知道,是不行的。
回复 使用道具 举报
张宝 发表于 2013-3-4 23:33
谢谢,现在还没学到for呢
看这样写可以吗?

原来可以这么简单
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马